Durante 5 años ayudamos a las empresas a alcanzar sus objetivos de mercado y de marca. Millennial es una empresa especializada en tecnología.

Galleria

Contactos

Enrique Palacios 360, Oficina 313, Miraflores - Lima

+51-975-113-510

 

En el mundo moderno de hoy, los datos se han vuelto más importantes que nunca, lo que convierte a SQL en la herramienta más utilizada para administrar y analizar estos datos. Sin embargo, dominar todos los comandos y consultas SQL puede ser desalentador para los principiantes e incluso para los desarrolladores experimentados. Por lo tanto, he creado esta hoja de trucos de comandos SQL que proporciona las instrucciones SQL de uso común para su referencia.

Descargue la hoja de referencia en PDF aquí.

Esto es lo que aprenderás en esta guía:

  • ¿Qué es SQL?
  • Comandos del lenguaje de manipulación de datos (DML)
  • Comandos del lenguaje de definición de datos (DDL)
  • Comandos del lenguaje de control de datos (DCL)
  • Comandos de control de transacciones
  • Consulta de comandos de datos
  • Comandos de unión de tablas
  • Comandos de subconsultas
  • Comandos de funciones agregadas
  • Comandos de funciones de cadena
  • Funciones de fecha y hora Comandos
  • Comandos de expresiones condicionales
  • Establecer comandos de operaciones

¿Qué es SQL?

SQL, una forma abreviada de lenguaje de consulta estructurado, es un lenguaje de programación para administrar y manipular datos en una base de datos.

Los analistas de datos, los desarrolladores y los administradores de bases de datos utilizan SQL para almacenar, recuperar, administrar y manipular datos dentro de una base de datos.

Comandos del lenguaje de manipulación de datos (DML)

Los comandos del lenguaje de manipulación de datos (DML) son instrucciones SQL que se utilizan para consultar, insertar, actualizar y eliminar datos de tablas de bases de datos.

Estos son los principales comandos DML:

1. SELECCIONE

El comando SELECT recupera datos de una base de datos.

Sintaxis:

1  SELECT column1, column2 FROM table_name;

En la sintaxis, column1 y column2 son los nombres de campo de la tabla de la que desea seleccionar datos. El table_name representa el nombre de la tabla de la que desea seleccionar datos.

2. INSERTAR

El comando INSERT agrega nuevos registros a una tabla.

Sintaxis:

1  INSERT INTO table_name (column1, column2) VALUES (value1, value2);

Ejemplo:

1  INSERT INTO customers (first_name, last_name) VALUES ('Mary', 'Doe');

En la consulta anterior, el valor se inserta en la columna y el valor se inserta en la columna de una tabla llamada .Maryfirst_nameDoelast_namecustomers

3. ACTUALIZACIÓN

El comando UPDATE se utiliza para modificar los registros existentes en una tabla.

Sintaxis:

1  UPDATE table_name SET column1 = value1, column2 = value
2 WHERE condition;

Ejemplo:

1  UPDATE employees SET employee_name = ‘John Doe’, department = ‘Marketing’;

En la consulta anterior, estamos actualizando la columna a y la columna a en una tabla llamada .employee_nameJohn DoedepartmentMarketingemployees

4. ELIMINAR

El comando SUPR elimina los registros de una tabla.

Sintaxis:

1  DELETEFROM table_name WHERE condition;

Ejemplo:

1  DELETEFROM employees WHERE employee_name = ‘John Doe’;

En este ejemplo, vamos a eliminar filas de la tabla en las que el archivo es .employeesemployee_nameJohn Doe

Comandos del lenguaje de definición de datos (DDL)

Los comandos del lenguaje de definición de datos (DDL) son instrucciones SQL que se utilizan para crear, modificar y quitar objetos de base de datos como tablas, índices, vistas y esquemas.

Estos son los principales comandos DDL:

1. CREAR

El comando CREATE se utiliza para crear una nueva base de datos y objetos de base de datos, como una tabla, un índice, una vista o un procedimiento almacenado.

Sintaxis:

1  CREATE TABLE table_name (column1 datatype1, column2 datatype2, ...);

Ejemplo:

1  CREATE TABLE employees (
2 employee_id INT PRIMARY KEY,
3 first_name VARCHAR(50),
4 last_name VARCHAR(50),
5 age INT6);

La consulta anterior crea una tabla denominada que contiene cuatro columnas que son , , y .employeesemployee_idfirst_namelast_nameage

2. ALTERAR

El comando ALTER se utiliza para agregar, eliminar o modificar columnas en una tabla existente.

Sintaxis:

1  ALTER TABLE table_name ADD column_name datatype;

Ejemplo:

1  ALTER TABLE customers ADD email VARCHAR(100);

La consulta anterior agrega una nueva columna denominada con un tipo de datos de VARCHAR(100) a una tabla existente denominada .emailcustomers

3. CAÍDA

El comando DROP se utiliza para quitar una tabla existente en una base de datos.

Sintaxis:

1  DROP TABLE table_name;

Ejemplo:

1  DROP TABLE customers;

La consulta anterior quita una tabla denominada .customers

4. TRUNCAR

El comando TRUNCATE se utiliza para eliminar los datos dentro de una tabla, pero no la tabla en sí.

Sintaxis:

1  TRUNCATE TABLE table_name;

Ejemplo:

1  TRUNCATE TABLE customers;

La consulta anterior trunca una tabla denominada , que quita todos los registros de la tabla.customers

Comandos del lenguaje de control de datos (DCL)

Los comandos del lenguaje de control de datos (DCL) son instrucciones SQL que se utilizan para conceder o revocar permisos y privilegios a usuarios y roles para realizar acciones específicas en la base de datos.

Estos son los principales comandos DCL:

1. CONCESIÓN

El comando GRANT se utiliza para otorgar privilegios específicos a usuarios o roles.

Sintaxis:

1  GRANTSELECT, INSERTON table_name TO user_name;

Ejemplo:

1  GRANTSELECT, INSERTON employees TO ‘John Doe’;

La consulta anterior concede privilegios SELECT e INSERT a la tabla a un usuario llamado John Doe.employees

2. REVOCAR

El comando REVOKE se utiliza para eliminar privilegios previamente otorgados a usuarios o roles.

Sintaxis:

1  REVOKE SELECT, INSERTON table_name FROM user_name;

Ejemplo:

1  REVOKE SELECT, INSERTON employees FROM ‘John Doe’;

La consulta anterior revoca los privilegios SELECT e INSERT de la tabla de empleados concedidos al usuario o rol John Doe.

Consulta de comandos de datos

Los comandos de consulta de datos son instrucciones SQL que se utilizan para recuperar datos de una base de datos.

Estos son los principales comandos de consulta de datos:

1. Declaración SELECT

La instrucción SELECT es el comando principal que se utiliza para recuperar datos de una base de datos. Le permite especificar qué columnas desea recuperar y de qué tabla.

1  SELECT column1, column2, FROM table_name;

2. Cláusula WHERE

La cláusula WHERE se utiliza para filtrar filas en función de una condición especificada.

Sintaxis:

1  SELECT * FROM table_name WHERE condition;

Ejemplo:

1  SELECT * FROM customers WHERE age > 30;

La consulta anterior selecciona todas las columnas de una tabla denominada customers en la que la edad es superior a 30 años.

3. Cláusula ORDER BY

La cláusula ORDER BY se utiliza para ordenar el conjunto de resultados en orden ascendente o descendente en función de una columna especificada.

Sintaxis:

1  SELECT * FROM table_name ORDER BY column_name ASC|DESC;

Ejemplo:

1  SELECT * FROM products ORDER BY price DESC;

La consulta anterior selecciona todas las columnas de una tabla denominada productos y ordena los resultados en función de la columna de precio en orden descendente (de mayor a menor precio).

4. Cláusula GROUP BY

La cláusula GROUP BY se utiliza para agrupar filas en función de los valores de una columna especificada. A menudo se usa con funciones agregadas como COUNT, SUM, AVG, etc.

Sintaxis:

1  SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;

Ejemplo:

1  SELECT category, COUNT(*) FROM products GROUP BY category;

La consulta anterior selecciona la columna de categoría y el recuento de cada categoría distinta de una tabla denominada productos. Los resultados proporcionarán el recuento de elementos en cada categoría.

5. Cláusula HAVING

La cláusula HAVING se utiliza para filtrar los resultados agrupados en función de una condición especificada.

Sintaxis:

1  SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name HAVING condition;

Ejemplo:

1  SELECT category, COUNT(*) FROM products GROUP BY category HAVING COUNT(*) > 5;

La consulta anterior selecciona la columna de categoría y el recuento de cada categoría distinta de una tabla denominada productos, pero solo para las categorías en las que el recuento es mayor que 5.

Comandos de unión

Los comandos de combinación son instrucciones SQL que se utilizan para combinar datos de dos o más tablas basadas en columnas relacionadas para crear un único conjunto de resultados.

Estos son los principales tipos de comandos de combinación:

1. UNIÓN INTERNA

El comando INNER JOIN devuelve filas con valores coincidentes en ambas tablas.

Sintaxis:

1  SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;

Ejemplo:

1  SELECT * FROM employees INNER JOIN departments ON employees.department_id = departments.id;

La consulta anterior selecciona todas las columnas de las tablas empleados y departamentos, y las une en función de la department_id en empleados e identificador en departamentos. De este modo, se recuperarán los registros en los que coincidan los identificadores de departamento en ambas tablas.

2. UNIÓN IZQUIERDA/UNIÓN EXTERNA IZQUIERDA

El comando LEFT JOIN devuelve todas las filas de la tabla de la izquierda (primera tabla) y las filas coincidentes de la tabla de la derecha (segunda tabla).

Sintaxis:

1  SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column;

Ejemplo:

1  SELECT * FROM employees LEFT JOIN departments ON employees.department_id = departments.id;

La consulta anterior selecciona todas las columnas de la tabla y de la tabla y realiza una LEFT JOIN basada en los departamentos de entrada y entrada. Esto recuperará todos los registros de empleados y su correspondiente información del departamento.employeesdepartmentsdepartment_idemployeesid

3. UNIÓN DERECHA/UNIÓN EXTERIOR DERECHA

El comando RIGHT JOIN devuelve todas las filas de la tabla derecha (segunda tabla) y las filas coincidentes de la tabla izquierda (primera tabla).

Sintaxis:

1  SELECT * FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;

Ejemplo:

1  SELECT *
2 FROM employees3RIGHT JOIN departments4ON employees.department_id = departments.department_id;

La consulta anterior utiliza un RIGHT JOIN para recuperar todos los registros de la tabla y los registros coincidentes de la tabla en función del archivo .departmentsemployeesdepartment_id

4. UNIÓN COMPLETA/UNIÓN EXTERNA COMPLETA

El comando FULL JOIN devuelve todas las filas cuando hay una coincidencia en la tabla de la izquierda o en la tabla de la derecha.

Sintaxis:

1  SELECT * FROM table1 FULL JOIN table2 ON table1.column = table2.column;

Ejemplo:

1  SELECT *
2 FROM employees
3 LEFT JOIN departments ON employees.employee_id = departments.employee_id
4 UNION
5 SELECT *
6 FROM employees
7 RIGHT JOIN departments ON employees.employee_id = departments.employee_id;

La consulta anterior primero realiza una LEFT JOIN en y luego realiza una RIGHT JOIN en las mismas tablas. Por último, utiliza UNION para combinar los resultados de ambas uniones, simulando efectivamente una UNIÓN COMPLETA.employeesdepartments

5. UNIÓN CRUZADA

El comando CROSS JOIN combina todas las filas de la primera tabla con todas las filas de la segunda tabla, creando un producto cartesiano.

Sintaxis:

1  SELECT * FROM table1 CROSS JOIN table2;

Ejemplo:

1  SELECT *
2 FROM employees
3 CROSS JOIN departments;

La consulta anterior realiza una COMBINACIÓN CRUZADA entre las tablas y .employeesdepartments

6. AUTO-UNIRSE

El comando SELF JOIN une una tabla consigo mismo.

Sintaxis:

1  SELECT * FROM table1 t1, table1 t
2 WHERE t1.column = t2.column;

Ejemplo:

1  SELECT *
2 FROM employees t1, employees t23WHERE t1.employee_id = t2.employee_id;

La consulta anterior usa una autocombinación en la tabla con un alias como “t1” y “t2”. Es comparar el de una instancia de la tabla (t1) con el de otra instancia de la tabla (t2). Esto recuperará las filas en las que el es el mismo en ambos casos.employeesemployee_idemployee_idemployee_id

7. UNIÓN NATURAL

El comando NATURAL JOIN coincide con las columnas con el mismo nombre en ambas tablas.

Sintaxis:

1  SELECT * FROM table1 NATURAL JOIN table2;

Ejemplo:

1  SELECT *
2 FROM employees
3 NATURAL JOIN departments;

La consulta anterior realiza una COMBINACIÓN NATURAL entre las tablas y .employeesdepartments

Subconsultas en SQL

Las subconsultas en SQL son consultas que están incrustadas dentro de otra consulta, lo que permite consultas más complejas y dinámicas. Las subconsultas se pueden utilizar dentro de varios comandos SQL, incluidos los comandos IN, ANY y ALL, para realizar comparaciones u operaciones basadas en los resultados de la subconsulta.

1. Comando IN

El comando IN se utiliza para determinar si un valor coincide con cualquier valor del resultado de una subconsulta. A menudo se utiliza en la cláusula WHERE.

Sintaxis:

1  SELECT column(s) FROM table WHERE value IN (subquery);

Ejemplo:

1  SELECT * FROM customers WHERE city IN (SELECT city FROM suppliers);

La consulta anterior selecciona todos los clientes cuya ciudad coincida con cualquier ciudad en el resultado de la subconsulta de la tabla de proveedores.

2. CUALQUIER comando

El comando ANY se utiliza para comparar un valor con cualquier valor devuelto por una subconsulta. Se puede utilizar con operadores de comparación como =, >, <, etc.

Sintaxis:

1  SELECT column(s) FROM table WHERE value < ANY (subquery);

Ejemplo:

1  SELECT * FROM products WHERE price < ANY (SELECT unit_price FROM supplier_products);

La consulta anterior selecciona productos con un precio inferior a cualquiera de los precios unitarios obtenidos de la subconsulta.

3. Comando ALL

El comando ALL se utiliza para comparar un valor con todos los valores devueltos por una subconsulta. Se puede utilizar con operadores de comparación como =, >, <, etc.

Sintaxis:

1  SELECT column(s) FROM table WHERE value > ALL (subquery);

Ejemplo:

1  SELECT * FROM orders WHERE order_amount > ALL (SELECT total_amount FROM previous_orders);

La consulta anterior selecciona pedidos con importes de pedido mayores que todos los importes totales obtenidos de la subconsulta.

Comandos de funciones agregadas

Los comandos de funciones agregadas son instrucciones SQL que se utilizan para realizar cálculos en un conjunto de valores y, como resultado, devolver un solo valor.

Estas son algunas funciones agregadas comunes en SQL:

1. CONTAR()

El comando COUNT cuenta el número de filas o valores no nulos de una columna especificada.

Sintaxis:

1  SELECT COUNT(column_name) FROM table_name;

Ejemplo:

1  SELECT COUNT(age) FROM employees;

La consulta anterior utiliza la función COUNT para contar los valores no nulos de la columna de la tabla. Esto le dará el recuento de registros en los que el no es nulo.ageemployeesage

2. SUMA()

El comando SUMA se utiliza para calcular la suma de todos los valores de una columna especificada.

Sintaxis:

1  SELECTSUM(column_name) FROM table_name;

Ejemplo:

1  SELECTSUM(revenue) FROM sales;

La consulta anterior utiliza la función SUMA para calcular el valor total de la columna de la tabla. Esto te dará la suma de todos los valores de la columna.revenuesalesrevenue

3. AVG()

El comando AVG se utiliza para calcular el promedio (valor medio) de todos los valores de una columna especificada.

Sintaxis:

1  SELECTAVG(column_name) FROM table_name;

Ejemplo:

1  SELECTAVG(price) FROM products;

La consulta anterior utiliza la función AVG para calcular el valor medio de la columna de la tabla. Esto te dará el precio medio de los productos.priceproducts

4. MIN()

El comando MIN devuelve el valor mínimo (más bajo) de una columna especificada.

Sintaxis:

1  SELECT MIN(column_name) FROM table_name;

Ejemplo:

1  SELECT MIN(price) FROM products;

La consulta anterior utiliza la función MIN para encontrar el valor mínimo en la columna de la tabla. Esto te dará el precio mínimo de todos los productos.priceproducts

5. MAX()

El comando MAX devuelve el valor máximo (más alto) de una columna especificada.

Sintaxis:

1  SELECT MAX(column_name) FROM table_name;

Ejemplo:

1  SELECT MAX(price) FROM products;

La consulta anterior utiliza la función MAX para encontrar el valor máximo en la columna de la tabla. Esto te dará el precio máximo entre todos los productos.priceproducts

Funciones de cadena en SQL

Las funciones de cadena en SQL se utilizan para manipular y realizar operaciones en valores de cadena (datos de caracteres). Estas funciones pueden ayudar con tareas como la extracción de subcadenas, la conversión de mayúsculas y minúsculas, la concatenación de cadenas, etc.

Estas son algunas de las funciones de cadena más utilizadas en SQL:

1. CONCAT()

El comando CONCAT concatena dos o más cadenas en una sola cadena.

Sintaxis:

1  SELECT CONCAT(string1, string2, ...) AS concatenated_string FROM table_name;

Ejemplo:

1  SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees;

La consulta anterior utiliza la función CONCAT para concatenar las columnas y de la tabla, separadas por un espacio. El resultado se devuelve como una nueva columna denominada .first_namelast_nameemployeesfull_name

2. SUBSTRING()/SUBSTR()

El comando SUBSTRING extrae una subcadena de una cadena.

Sintaxis:

1  SELECTSUBSTRING(string FROM start_position [FOR length]) AS substring FROM table_name;

Ejemplo:

1  SELECTSUBSTRING(product_name FROM 1 FOR 5) AS substring FROM products;

La consulta anterior utiliza la función SUBSTRING para extraer una subcadena a partir de la posición 1 (el principio de la cadena) con una longitud de 5 caracteres de la columna de la tabla. El resultado se devuelve como una nueva columna denominada .product_nameproductssubstring

3. CHAR_LENGTH()/LONGITUD()

El comando LENGTH devuelve la longitud (número de caracteres) de una cadena.

Sintaxis:

1  SELECT CHAR_LENGTH(string) AS length FROM table_name;

Ejemplo:

1  SELECT CHAR_LENGTH(product_name) AS length FROM products;

La consulta anterior utiliza la función CHAR_LENGTH para calcular la longitud de la columna de la tabla. El resultado se devuelve como una nueva columna denominada .product_nameproductslength

4. SUPERIOR()

El comando UPPER convierte todos los caracteres de una cadena a mayúsculas.

Sintaxis:

1  SELECT UPPER(string) AS uppercase_string FROM table_name;

Ejemplo:

1  SELECT UPPER(first_name) AS uppercase_first_name FROM employees;

La consulta anterior utiliza la función UPPER para convertir los valores de columna a mayúsculas en la tabla. El resultado se devuelve como una nueva columna denominada .first_nameemployeesuppercase_first_name

5. MÁS BAJO()

El comando LOWER convierte todos los caracteres de una cadena a minúsculas.

Sintaxis:

1  SELECT LOWER(string) AS lowercase_string FROM table_name;

Ejemplo:

1  SELECT LOWER(last_name) AS lowercase_last_name FROM employees;

La consulta anterior utiliza la función LOWER para convertir los valores de columna a minúsculas en la tabla. El resultado se devuelve como una nueva columna denominada .last_nameemployeeslowercase_last_name

6. RECORTAR ()

El comando TRIM elimina los prefijos o sufijos especificados (o espacios en blanco de forma predeterminada) de una cadena.

Sintaxis:

1  SELECT TRIM([LEADING | TRAILING | BOTH] characters 
2 FROM string) AS trimmed_string FROM table_name;

Ejemplo:

1  SELECT TRIM(TRAILING ' 'FROM full_name) AS trimmed_full_name 
2 FROM customers;

La consulta anterior utiliza la función TRIM para quitar los espacios finales de los valores de columna de la tabla. El resultado se devuelve como una nueva columna denominada . La opción TRAILING se utiliza para especificar que queremos eliminar los espacios finales.full_namecustomerstrimmed_full_name

7. IZQUIERDA()

El comando LEFT devuelve un número especificado de caracteres desde la izquierda de una cadena.

Sintaxis:

1  SELECT LEFT(string, num_characters) AS left_string FROM table_name;

Ejemplo:

1  SELECT LEFT(product_name, 5) AS left_product_name FROM products;

La consulta anterior utiliza la función LEFT para extraer los primeros 5 caracteres de los valores de columna de la tabla. El resultado se devuelve como una nueva columna denominada .product_nameproductsleft_product_name

8. DERECHA()

El comando DERECHA devuelve un número especificado de caracteres a la derecha de una cadena.

Sintaxis:

1  SELECT RIGHT(string, num_characters) AS right_string FROM table_name;

Ejemplo:

1  SELECT RIGHT(order_number, 4) AS right_order_number FROM orders;

La consulta anterior utiliza la función RIGHT para extraer los últimos 4 caracteres de los valores de columna de la tabla. El resultado se devuelve como una nueva columna denominada .order_numberordersright_order_number

9. REEMPLAZAR ()

El comando REPLACE reemplaza las apariciones de una subcadena dentro de una cadena.

Sintaxis:

1  SELECTREPLACE(string, old_substring, new_substring) AS replaced_string 
2 FROM table_name;

Ejemplo:

1  SELECTREPLACE(description, 'old_string', 'new_string') AS replaced_description 
2 FROM product_descriptions;

La consulta anterior utiliza la función REPLACE para reemplazar las apariciones de with en los valores de columna de la tabla. El resultado se devuelve como una nueva columna denominada . Reemplace y con las cadenas reales que desea reemplazar y reemplácelas.old_stringnew_stringdescriptionproduct_descriptionsreplaced_descriptionold_stringnew_string

Comandos SQL de fecha y hora

Las funciones de fecha y hora en SQL se utilizan para manipular y realizar operaciones en valores de fecha y hora.

Estas son algunas de las funciones de fecha y hora más utilizadas en SQL:

1. CURRENT_DATE()

El comando CURRENT_DATE devuelve la fecha actual.

Sintaxis:

1  SELECT CURRENT_DATE() AS current_date;

2. CURRENT_TIME()

El comando CURRENT_TIME devuelve la hora actual.

Sintaxis:

1  SELECT CURRENT_TIME() AS current_time;

3. CURRENT_TIMESTAMP()

El comando CURRENT_TIMESTAMP devuelve la fecha y hora actuales.

Sintaxis:

1  SELECT CURRENT_TIMESTAMP() AS current_timestamp;

4. DATE_PART()

El comando DATE_PART extrae una parte específica (por ejemplo, año, mes, día) de una fecha u hora.

Sintaxis:

1  SELECT DATE_PART('part', date_expression) AS extracted_part;

5. DATE_ADD()/DATE_SUB()

The DATE_ADD command adds or subtracts a specified number of days, months, or years to/from a date.

Syntax:

1  SELECT DATE_ADD(date_expression, INTERVAL value unit) AS new_date;
1  SELECT DATE_SUB(date_expression, INTERVAL value unit) AS new_date;

6. EXTRACT()

The EXTRACT command extracts a specific part (e.g., year, month, day) from a date or time.

Syntax:

1  SELECT EXTRACT(part FROM date_expression) AS extracted_part;

7. TO_CHAR()

The TO_CHAR command converts a date or time to a specified format.

Syntax:

1  SELECT TO_CHAR(date_expression, 'format') AS formatted_date;

8. TIMESTAMPDIFF()

The TIMESTAMPDIFF command calculates the difference between two timestamps in a specified unit (e.g., days, hours, minutes).

Syntax:

1  SELECT TIMESTAMPDIFF(unit, timestamp1, timestamp2) AS difference;

9. DATEDIFF()

The DATEDIFF command calculates the difference in days between two dates.

Syntax:

1  SELECTDATEDIFF(date1, date2) AS difference_in_days;

Conditional Expressions

Conditional expressions in SQL allow for decision-making within queries, enabling you to retrieve data based on specific conditions. Commonly used conditional expressions include CASE, IF, COALESCE, and NULLIF.

1. CASE Statement

The CASE statement allows you to perform conditional logic within a query.

Syntax:

1  SELECT
2 column1,
3 column2,
4 CASE
5 WHEN condition1 THEN result1
6 WHEN condition2 THEN result2
7 ELSE default_result8ENDAS alias9FROM table_name;

Example:

1  SELECT
2 order_id,
3 total_amount,
4 CASE
5 WHEN total_amount > 1000 THEN'High Value Order'
6 WHEN total_amount > 500 THEN'Medium Value Order'
7 ELSE'Low Value Order'
8 ENDAS order_status9FROM orders;

The query above uses a CASE statement to evaluate conditions based on the and create an accordingly for each order. The result is returned with the , , and the calculated .total_amountorder_statusorder_idtotal_amountorder_status

2. IF() Function

The IF() function evaluates a condition and returns a value based on the evaluation.

Syntax:

1  SELECTIF(condition, true_value, false_value) AS alias FROM table_name;

Example:

1  SELECT
2 name,
3 age,
4 IF(age > 50, 'Senior', 'Junior') AS employee_category
5 FROM employees;

The query above uses the IF function to categorize employees based on their age. If the age is greater than 50, they are categorized as ; otherwise, they are categorized as . The result is returned with the , , and the calculated .SeniorJuniornameageemployee_category

3. COALESCE() Function

The COALESCE() function returns the first non-null value from a list of values.

Syntax:

1  SELECTCOALESCE(value1, value2, ...) AS alias FROM table_name;

Example:

1  SELECT
2 COALESCE(first_name, middle_name) AS preferred_name
3 FROM employees;

La consulta anterior utiliza la función COALESCE para seleccionar el primer nombre no nulo (o bien) como para cada empleado. El resultado se devuelve con el calculado para cada empleado.first_namemiddle_namepreferred_namepreferred_name

4. Función NULLIF()

La función NULLIF() devuelve null si dos expresiones especificadas son iguales.

Sintaxis:

1  SELECT NULLIF(expression1, expression2) AS alias FROM table_name;

Ejemplo:

1  SELECT NULLIF(total_amount, discounted_amount) AS diff_amount FROM orders;

La consulta anterior utiliza la función NULLIF para comprobar si es igual a . Si son iguales, devuelve NULL; de lo contrario, devuelve . El resultado se devuelve indicando la diferencia (o NULL) entre el importe total y el importe descontado de cada pedido.total_amountdiscounted_amounttotal_amountdiff_amount

Establecer operaciones

Las operaciones de conjuntos en SQL permiten realizar operaciones en varios conjuntos de datos, como la combinación de conjuntos (UNION), la búsqueda de la intersección de conjuntos (INTERSECT) y la búsqueda de la diferencia entre conjuntos (EXCEPT).

Estos son los principales comandos de operación de conjunto con ejemplos:

1. UNIÓN

El operador UNION combina los conjuntos de resultados de dos o más instrucciones SELECT en un único conjunto de resultados.

Sintaxis:

1  SELECT column1, column
2 FROM table12UNION
3 SELECT column1, column2 FROM table2;

Ejemplo:

1  SELECT first_name, last_name FROM customers
2 UNION
3 SELECT first_name, last_name FROM employees;

La consulta anterior utiliza el operador UNION para combinar las columnas y de las tablas y . El resultado incluirá combinaciones únicas de y de ambas tablas.first_namelast_namecustomersemployeesfirst_namelast_name

2. INTERSECCIÓN

El operador INTERSECT devuelve las filas comunes que aparecen en ambos conjuntos de resultados.

Syntax:

1  SELECT column1, column2 FROM table1
2 INTERSECT3SELECT column1, column2 FROM table2;

Example:

1  SELECT first_name, last_name FROM customers
2 INTERSECT3SELECT first_name, last_name FROM employees;

The query above uses the INTERSECT operator to find the common and between the and tables. The result will include rows where both the first name and last name are present in both tables.first_namelast_namecustomersemployees

3. EXCEPT

The EXCEPT operator returns the distinct rows from the left result set that are not present in the right result set.

Syntax:

1  SELECT column1, column2 FROM table1
2 EXCEPT3SELECT column1, column2 FROM table2;

Example:

1  SELECT first_name, last_name FROM customers
2 EXCEPT
3 SELECT first_name, last_name FROM employees;

La consulta anterior utiliza el operador EXCEPT para buscar los y en la tabla que no están presentes en la tabla. El resultado incluirá filas en las que el nombre y el apellido están en la tabla, pero no en la tabla.first_namelast_namecustomersemployeescustomersemployees

Comandos de control de transacciones

Los comandos del lenguaje de control de transacciones (TCL) en SQL se utilizan para administrar transacciones dentro de una base de datos.

Estos son los principales comandos de TCL:

1. COMPROMÉTETE

El comando COMMIT se utiliza para guardar todos los cambios realizados durante la transacción actual y hacerlos permanentes.

Sintaxis:

1  COMMIT;

Ejemplo:

1  BEGIN TRANSACTION;
2
3-- SQL statements and changes within the transaction
4
5 INSERT INTO employees (name, age) VALUES ('Alice', 30);
6 UPDATE products SET price = 25.00 WHERE category = 'Electronics';
7
8 COMMIT;

En la consulta anterior, la instrucción COMMIT se utiliza para guardar de forma permanente los cambios realizados en las tablas y durante la transacción.employeesproducts

2. REVERSIÓN

El comando ROLLBACK se utiliza para deshacer todos los cambios realizados durante la transacción actual y descartarlos.

Sintaxis:

1  ROLLBACK;

Ejemplo:

1  BEGIN TRANSACTION;
2
3-- SQL statements and changes within the transaction
4
5 INSERT INTO employees (name, age) VALUES ('Bob', 35);
6 UPDATE products SET price = 30.00 WHERE category = 'Electronics';
7
8 ROLLBACK;

En la consulta anterior, la instrucción ROLLBACK se utiliza para deshacer los cambios realizados durante la transacción, por lo que la inserción de ‘Bob’ en la tabla y la actualización de los precios en la tabla se revierten, y la base de datos se restaura a su estado anterior al inicio de la transacción.employeesproducts

3. SAVEPOINT

The SAVEPOINT command is used to set a point within a transaction to which you can later roll back.

Syntax:

1  SAVEPOINT savepoint_name;

Example:

1  BEGIN TRANSACTION;
2
3 INSERT INTO employees (name, age) VALUES ('Carol', 28);
4
5 SAVEPOINT before_update;
6
7 UPDATE products SET price = 40.00 WHERE category = 'Electronics';
8
9 SAVEPOINT after_update;
10
11 DELETEFROM customers WHERE age > 60;
12
13 ROLLBACK TO before_update;
14
15-- At this point, the DELETE is rolled back, but the UPDATE remains.
16
17 COMMIT;

The query above sets two savepoints: and . It later rollback to , effectively undoing the DELETE operation, but the UPDATE operation remains in effect when the transaction is committed.before_updateafter_updatebefore_update

4. ROLLBACK TO SAVEPOINT

The ROLLBACK TO SAVEPOINT command is used to roll back to a specific savepoint within a transaction.

Syntax:

1  ROLLBACK TO SAVEPOINT savepoint_name;

Example:

1  BEGIN TRANSACTION;
2
3 INSERT INTO employees (name, age) VALUES ('David', 42);
4
5 SAVEPOINT before_update;
6
7 UPDATE products SET price = 50.00 WHERE category = 'Electronics';
8
9 SAVEPOINT after_update;
10
11 DELETEFROM customers WHERE age > 60;
12
13-- Rollback to the savepoint before the update14ROLLBACK TO SAVEPOINT before_update;1516-- At this point, the UPDATE is rolled back, but the INSERT remains.1718COMMIT;

La consulta anterior sest dos puntos de guardado: y . A continuación, se revierte a , deshaciendo la operación UPDATE, pero dejando intacta la operación INSERT. Finalmente, se confirma la transacción, conservando la operación INSERT.before_updateafter_updatebefore_update

5. ESTABLECER TRANSACCIÓN

El comando SET TRANSACTION se utiliza para configurar las propiedades de la transacción actual, como el nivel de aislamiento y el modo de transacción.

Sintaxis:

1  SET TRANSACTION [ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE }]

Ejemplo:

1  BEGIN TRANSACTION;
2
3-- Set the isolation level to READ COMMITTED
4 SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
5
6-- SQL statements and changes within the transaction
7
8 INSERT INTO employees (name, age) VALUES ('Emily', 35);
9 UPDATE products SET price = 60.00 WHERE category = 'Electronics';
10
11 COMMIT;

La consulta anterior establece el nivel de aislamiento en READ COMMITTED para la transacción. Los cambios realizados en la transacción serán visibles para otras transacciones solo después de que se confirmen. El nivel de aislamiento SERIALIZABLE garantizaría el nivel más alto de aislamiento, asegurándose de que ninguna otra transacción pueda acceder a los datos modificados por esta transacción hasta que se confirme.

Conclusión

En conclusión, he cubierto las declaraciones SQL de uso común, como los comandos del lenguaje de manipulación de datos (DML), los comandos del lenguaje de definición de datos (DDL), los comandos del lenguaje de control de datos (DCL) y más.

Tanto si eres un principiante que aprende SQL como si eres un desarrollador experimentado que busca mejorar sus habilidades de SQL, esta hoja de trucos de comandos SQL es la compañera perfecta para ti.

Siéntase libre de probar algunas de las consultas SQL proporcionadas con DbVisualizer. Esperamos que hayas disfrutado de este blog y que te quedes para obtener más contenido: lee otros blogs en nuestro sitio web y nos vemos en el próximo.