Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Este tutorial le
brinda un inicio rápido con SQL al enumerar toda la sintaxis básica de SQL.
Todas las sentencias SQL comienzan con cualquiera de las palabras clave como SELECT,
INSERT, UPDATE, DELETE, ALTER, DROP, CREATE, USE, SHOW y todas las sentencias
terminan con un punto y coma (;).
El punto más importante que debe tenerse en cuenta aquí es que SQL no distingue entre
mayúsculas y minúsculas, lo que significa que SELECT y select tienen el mismo significado
en las sentencias SQL. Mientras que MySQL marca la diferencia en los nombres de las
tablas.Por lo tanto, si está trabajando con MySQL, debe proporcionar los nombres de las
tablas tal como existen en la base de datos.
Cláusula Y / O de SQL
SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION-1 {AND|OR} CONDITION-2;
Cláusula SQL IN
SELECT column1, column2....columnN
FROM table_name
WHERE column_name IN (val-1, val-2,...val-N);
Operadores aritméticos
Operadores de comparación
Operadores logicos
Operadores utilizados para negar condiciones
Mostrar ejemplos
Mostrar ejemplos
Comprueba si los valores de dos operandos son iguales o no, si los (a! = b)
!= valores no son iguales, la condición se convierte en verdadera. es
cierto.
Comprueba si los valores de dos operandos son iguales o no, si los (a <> b)
<> valores no son iguales, la condición se convierte en verdadera. es
cierto.
>= Comprueba si el valor del operando izquierdo es mayor o igual que (a> = b)
el valor del operando derecho, si es así, la condición se convierte no es
en verdadera. cierto.
Mostrar ejemplos
No Operador y descripción
Señor.
TODOS
1
El operador ALL se utiliza para comparar un valor con todos los valores de otro
conjunto de valores.
Y
2 El operador AND permite la existencia de múltiples condiciones en la cláusula
WHERE de una instrucción SQL.
NINGUNA
3 El operador ANY se utiliza para comparar un valor con cualquier valor
aplicable en la lista según la condición.
ENTRE
4 El operador BETWEEN se utiliza para buscar valores que están dentro de un
conjunto de valores, dado el valor mínimo y el valor máximo.
5 EXISTE
El operador EXISTS se utiliza para buscar la presencia de una fila en una tabla
especificada que cumpla con un cierto criterio.
EN
6 El operador IN se utiliza para comparar un valor con una lista de valores
literales que se han especificado.
COMO
7 El operador LIKE se usa para comparar un valor con valores similares usando
operadores comodín.
NO
O
9 El operador OR se utiliza para combinar varias condiciones en la cláusula
WHERE de una instrucción SQL.
ES NULO
10
El operador NULL se utiliza para comparar un valor con un valor NULL.
ÚNICO
11 El operador UNIQUE busca cada fila de una tabla especificada en busca de
unicidad (sin duplicados).
Una expresión es una combinación de uno o más valores, operadores y funciones SQL que
evalúan a un valor. Estas EXPRESIONES SQL son como fórmulas y están escritas en
lenguaje de consulta. También puede usarlos para consultar la base de datos para un
conjunto específico de datos.
Sintaxis
Booleano
Numérico
Fecha
Expresiones booleanas
Las expresiones booleanas SQL obtienen los datos basándose en la coincidencia de un solo
valor. A continuación se muestra la sintaxis:
SELECT column1, column2, columnN
FROM table_name
WHERE SINGLE VALUE MATCHING EXPRESSION;
La siguiente tabla es un ejemplo simple que muestra el uso de varias expresiones booleanas
SQL:
SQL> SELECT * FROM CUSTOMERS WHERE SALARY = 10000;
+----+-------+-----+---------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+-------+-----+---------+----------+
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+-------+-----+---------+----------+
1 row in set (0.00 sec)
Expresión numérica
Estas expresiones se utilizan para realizar cualquier operación matemática en cualquier
consulta. A continuación se muestra la sintaxis:
SELECT numerical_expression as OPERATION_NAME
[FROM table_name
WHERE CONDITION] ;
Aquí, la numerical_expression se usa para una expresión matemática o cualquier fórmula. A
continuación se muestra un ejemplo simple que muestra el uso de expresiones numéricas
SQL:
Hay varias funciones integradas como avg (), sum (), count (), etc., para realizar lo que se
conoce como cálculos de datos agregados contra una tabla o una columna de tabla
específica.
SQL> SELECT COUNT(*) AS "RECORDS" FROM CUSTOMERS;
+---------+
| RECORDS |
+---------+
| 7 |
+---------+
1 row in set (0.00 sec)
Expresiones de fecha
Las expresiones de fecha devuelven los valores actuales de fecha y hora del sistema -
SQL> SELECT CURRENT_TIMESTAMP;
+---------------------+
| Current_Timestamp |
+---------------------+
| 2009-11-12 06:40:23 |
+---------------------+
1 row in set (0.00 sec)
Sintaxis
La sintaxis básica de la instrucción SELECT es la siguiente:
SELECT column1, column2, columnN FROM table_name;
Aquí, column1, column2 ... son los campos de una tabla cuyos valores desea obtener. Si
desea obtener todos los campos disponibles en el campo, puede utilizar la siguiente sintaxis.
SELECT * FROM table_name;
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
El siguiente código es un ejemplo, que buscaría los campos ID, Nombre y Salario de los
clientes disponibles en la tabla CLIENTES.
SQL> SELECT ID, NAME, SALARY FROM CUSTOMERS;
La cláusula WHERE de SQL se utiliza para especificar una condición al obtener los datos de
una sola tabla o al unirse con varias tablas. Si se cumple la condición dada, solo devuelve un
valor específico de la tabla. Debe utilizar la cláusula WHERE para filtrar los registros y
obtener solo los registros necesarios.
La cláusula WHERE no solo se usa en la instrucción SELECT, sino que también se usa en la
instrucción UPDATE, DELETE, etc., que examinaremos en los capítulos siguientes.
Sintaxis
La sintaxis básica de la instrucción SELECT con la cláusula WHERE es la que se muestra a
continuación.
SELECT column1, column2, columnN
FROM table_name
WHERE [condition]
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
El siguiente código es un ejemplo que obtendría los campos ID, Nombre y Salario de la tabla
CLIENTES, donde el salario es mayor que 2000 -
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000;
La siguiente consulta es un ejemplo, que buscaría los campos ID, Nombre y Salario de la
tabla CLIENTES para un cliente con el nombre Hardik .
Aquí, es importante tener en cuenta que todas las cadenas deben estar entre comillas simples
(''). Considerando que, los valores numéricos deben darse sin comillas como en el ejemplo
anterior.
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE NAME = 'Hardik';
El operador AND
El operador AND permite la existencia de múltiples condiciones en la cláusula WHERE de
una instrucción SQL.
Sintaxis
La sintaxis básica del operador AND con una cláusula WHERE es la siguiente:
SELECT column1, column2, columnN
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
Puede combinar N número de condiciones utilizando el operador AND. Para que la
instrucción SQL realice una acción, ya sea una transacción o una consulta, todas las
condiciones separadas por AND deben ser VERDADERAS.
Ejemplo
A continuación se muestra un ejemplo, que obtendría los campos ID, Nombre y Salario de la
tabla CLIENTES, donde el salario es superior a 2000 y la edad es inferior a 25 años:
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000 AND age < 25;
El operador de quirófano
El operador OR se utiliza para combinar varias condiciones en la cláusula WHERE de una
instrucción SQL.
Sintaxis
El siguiente bloque de código tiene una consulta, que buscaría los campos ID, Nombre y
Salario de la tabla CLIENTES, donde el salario es mayor a 2000 O la edad es menor a 25
años.
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000 OR age < 25;
CLAUSULA LIKE:
Sintaxis
La sintaxis básica de% y _ es la siguiente:
SELECT FROM table_name
WHERE column LIKE 'XXXX%'
or
or
or
Ejemplo
La siguiente tabla tiene algunos ejemplos que muestran que la parte WHERE tiene una
cláusula LIKE diferente con operadores '%' y '_' -
No Declaración y descripción
Señor.
Tomemos un ejemplo real, considere la tabla CLIENTES que tiene los registros que se
muestran a continuación.
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
CLAUSULA SUPERIOR:
Nota : todas las bases de datos no admiten la cláusula TOP. Por ejemplo, MySQL admite
lacláusula LIMIT para obtener un número limitado de registros, mientras que Oracle usa
elcomando ROWNUM para obtener un número limitado de registros.
Sintaxis
La sintaxis básica de la cláusula TOP con una instrucción SELECT sería la siguiente.
SELECT TOP number|percent column_name(s)
FROM table_name
WHERE [condition]
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
ORDENAR POR:
Sintaxis
La sintaxis básica de la cláusula ORDER BY es la siguiente:
SELECT column-list
FROM table_name
[WHERE condition]
[ORDER BY column1, column2, .. columnN] [ASC | DESC];
Puede utilizar más de una columna en la cláusula ORDER BY. Asegúrese de que cualquier
columna que esté usando para ordenar esa columna debe estar en la lista de columnas.
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
AGRUPAR POR:
Sintaxis
La sintaxis básica de una cláusula GROUP BY se muestra en el siguiente bloque de
código.La cláusula GROUP BY debe seguir las condiciones de la cláusula WHERE y debe
preceder a la cláusula ORDER BY si se utiliza una.
SELECT column1, column2
FROM table_name
WHERE [ conditions ]
GROUP BY column1, column2
ORDER BY column1, column2
Ejemplo
Considere que la tabla CLIENTES tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Si desea conocer el monto total del salario de cada cliente, entonces la consulta GROUP BY
sería la siguiente.
SQL> SELECT NAME, SUM(SALARY) FROM CUSTOMERS
GROUP BY NAME;
Ahora, veamos una tabla donde la tabla CUSTOMERS tiene los siguientes registros con
nombres duplicados:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Ramesh | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | kaushik | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Ahora, nuevamente, si desea saber el monto total del salario de cada cliente, entonces la
consulta GROUP BY sería la siguiente:
SQL> SELECT NAME, SUM(SALARY) FROM CUSTOMERS
GROUP BY NAME;
La palabra clave SQL DISTINCT se usa junto con la instrucción SELECT para eliminar todos
los registros duplicados y obtener solo registros únicos.
Puede haber una situación en la que tenga varios registros duplicados en una tabla. Al
buscar dichos registros, tiene más sentido buscar solo esos registros únicos en lugar de
buscar registros duplicados.
Sintaxis
La sintaxis básica de la palabra clave DISTINCT para eliminar los registros duplicados es la
siguiente:
SELECT DISTINCT column1, column2,.....columnN
FROM table_name
WHERE [condition]
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Primero, veamos cómo la siguiente consulta SELECT devuelve los registros de salario
duplicados.
SQL> SELECT SALARY FROM CUSTOMERS
ORDER BY SALARY;
Sintaxis
La sintaxis básica de la cláusula ORDER BY que se usaría para ordenar el resultado en
orden ascendente o descendente es la siguiente:
SELECT column-list
FROM table_name
[WHERE condition]
[ORDER BY column1, column2, .. columnN] [ASC | DESC];
Puede utilizar más de una columna en la cláusula ORDER BY. Asegúrese de que cualquier
columna que esté usando para ordenar, esa columna debe estar en la lista de columnas.
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
A continuación se muestra un ejemplo, que clasificaría el resultado en orden ascendente por
NOMBRE y SALARIO.
SQL> SELECT * FROM CUSTOMERS
ORDER BY NAME, SALARY;
Para obtener las filas con su propio orden preferido, la consulta SELECT utilizada sería la
siguiente:
SQL> SELECT * FROM CUSTOMERS
ORDER BY (CASE ADDRESS
WHEN 'DELHI' THEN 1
WHEN 'BHOPAL' THEN 2
WHEN 'KOTA' THEN 3
WHEN 'AHMEDABAD' THEN 4
WHEN 'MP' THEN 5
ELSE 100 END) ASC, ADDRESS DESC;
RESTRICCIONES:
Las restricciones son las reglas que se aplican a las columnas de datos de una tabla. Se
utilizan para limitar el tipo de datos que pueden incluirse en una tabla. Esto asegura la
precisión y confiabilidad de los datos en la base de datos.
Restricción NOT NULL : garantiza que una columna no pueda tener un valor NULL.
Restricción DEFAULT : proporciona un valor predeterminado para una columna
cuando no se especifica ninguno.
Restricción ÚNICA : garantiza que todos los valores de una columna sean diferentes.
Clave PRIMARIA : identifica de forma única cada fila / registro en una tabla de base de
datos.
Clave EXTRANJERA : identifica de forma única una fila / registro en cualquiera de las
tablas de la base de datos dada.
Restricción CHECK: la restricción CHECK garantiza que todos los valores de una
columna satisfagan determinadas condiciones.
ÍNDICE : se utiliza para crear y recuperar datos de la base de datos muy rápidamente.
Las restricciones se pueden especificar cuando se crea una tabla con la instrucción CREATE
TABLE o puede usar la instrucción ALTER TABLE para crear restricciones incluso después
de que se crea la tabla.
Eliminación de restricciones
Cualquier restricción que haya definido puede eliminarse utilizando el comando ALTER
TABLE con la opción DROP CONSTRAINT.
Por ejemplo, para eliminar la restricción de clave principal en la tabla EMPLOYEES, puede
usar el siguiente comando.
ALTER TABLE EMPLOYEES DROP CONSTRAINT EMPLOYEES_PK;
Restricciones de integridad
Las restricciones de integridad se utilizan para garantizar la precisión y coherencia de los
datos en una base de datos relacional. La integridad de los datos se maneja en una base de
datos relacional a través del concepto de integridad referencial.
USO DE COMBINACIONES:
La cláusula SQL Joins se utiliza para combinar registros de dos o más tablas en una base
de datos. Un JOIN es un medio para combinar campos de dos tablas usando valores
comunes a cada uno.
Ahora, unamos estas dos tablas en nuestra instrucción SELECT como se muestra a
continuación.
SQL> SELECT ID, NAME, AGE, AMOUNT
FROM CUSTOMERS, ORDERS
WHERE CUSTOMERS.ID = ORDERS.CUSTOMER_ID;
Aquí, se nota que la unión se realiza en la cláusula WHERE. Se pueden usar varios
operadores para unir tablas, como =, <,>, <>, <=,> =,! =, BETWEEN, LIKE y NOT; todos
pueden usarse para unir tablas. Sin embargo, el operador más común es el símbolo igual a.
INNER JOIN : devuelve filas cuando hay una coincidencia en ambas tablas.
LEFT JOIN : devuelve todas las filas de la tabla de la izquierda, incluso si no hay
coincidencias en la tabla de la derecha.
RIGHT JOIN : devuelve todas las filas de la tabla de la derecha, incluso si no hay
coincidencias en la tabla de la izquierda.
FULL JOIN : devuelve filas cuando hay una coincidencia en una de las tablas.
SELF JOIN : se utiliza para unir una tabla consigo misma como si fueran dos tablas,
cambiando temporalmente el nombre de al menos una tabla en la declaración SQL.
UNIÓN CARTESIANA : devuelve el producto cartesiano de los conjuntos de registros
de las dos o más tablas unidas.
La cláusula / operador SQL UNION se utiliza para combinar los resultados de dos o más
sentencias SELECT sin devolver filas duplicadas.
Para usar esta cláusula UNION, cada instrucción SELECT debe tener
Sintaxis
La sintaxis básica de una cláusula UNION es la siguiente:
SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]
UNION
Aquí, la condición dada podría ser cualquier expresión dada según su requisito.
Ejemplo
Considere las siguientes dos tablas.
Ahora, unamos estas dos tablas en nuestra declaración SELECT de la siguiente manera:
SQL> SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
LEFT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION
SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
RIGHT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;
Las mismas reglas que se aplican a la cláusula UNION se aplicarán al operador UNION ALL.
Sintaxis
UNION ALL
Aquí, la condición dada podría ser cualquier expresión dada según su requisito.
Ejemplo
Ahora, unamos estas dos tablas en nuestra declaración SELECT de la siguiente manera:
SQL> SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
LEFT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION ALL
SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
RIGHT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;
Hay otras dos cláusulas (es decir, operadores), que son como la cláusula UNION.
Puede cambiar el nombre de una tabla o columna temporalmente dando otro nombre
conocido como Alias . El uso de alias de tabla es para cambiar el nombre de una tabla en
una declaración SQL específica. El cambio de nombre es un cambio temporal y el nombre
real de la tabla no cambia en la base de datos. Los alias de columna se utilizan para cambiar
el nombre de las columnas de una tabla con el propósito de una consulta SQL en particular.
Sintaxis
La sintaxis básica de un alias de tabla es la siguiente.
SELECT column1, column2....
FROM table_name AS alias_name
WHERE [condition];
Ejemplo
Considere las siguientes dos tablas.