🗄️ SQL (Structured Query Language) Cheatsheet Completo 🗄️

SQL es el lenguaje estándar utilizado para comunicarse con y gestionar bases de datos relacionales (RDBMS) como MySQL, PostgreSQL, Oracle, SQL Server, SQLite, entre otros. Permite almacenar, manipular, consultar y recuperar datos.


1. 🌟 Conceptos Clave


2. 🔤 Tipos de Datos Comunes

Los tipos de datos pueden variar ligeramente entre diferentes sistemas de gestión de bases de datos relacionales (RDBMS), pero estos son los más comunes:


3. 📝 DDL (Data Definition Language) - Definición de Estructura

Comandos para definir, modificar y eliminar la estructura de la base de datos y sus objetos.

3.1. CREATE

3.2. ALTER

3.3. DROP

3.4. TRUNCATE


4. 🗃️ DML (Data Manipulation Language) - Manipulación de Datos

Comandos para manipular los datos dentro de las tablas.

4.1. INSERT

4.2. UPDATE

4.3. DELETE


5. 🔍 DQL (Data Query Language) - Consulta de Datos

Comandos para recuperar datos de la base de datos. SELECT es el comando más utilizado.

5.1. SELECT

5.2. WHERE (Filtrado de Filas)

5.3. ORDER BY (Ordenación de Resultados)

5.4. LIMIT / OFFSET (Paginación - MySQL/PostgreSQL/SQLite)

5.5. GROUP BY (Agrupación de Filas)

5.6. HAVING (Filtrado de Grupos)


6. 🧮 Operadores Comunes en WHERE


7. ➕ Funciones de Agregación

Operan sobre un conjunto de filas y devuelven un único valor.


8. 🔄 JOINS (Combinación de Tablas)

Combina filas de dos o más tablas basándose en una columna relacionada.

8.1. UNION / UNION ALL

Combina los resultados de dos o más sentencias SELECT. Las columnas seleccionadas deben tener tipos de datos similares y el mismo orden.


9. 🪆 Subconsultas (Subqueries / Nested Queries)

Una consulta SELECT dentro de otra consulta.

-- Obtener usuarios que han realizado pedidos
SELECT Nombre FROM Usuarios
WHERE ID_Usuario IN (SELECT ID_Usuario FROM Pedidos);

-- Obtener el producto más caro
SELECT Nombre, Precio FROM Productos
WHERE Precio = (SELECT MAX(Precio) FROM Productos);

-- Subconsulta en el FROM (Derived Table / CTE)
SELECT T.Nombre, T.TotalProductos
FROM (
    SELECT Categoria AS Nombre, COUNT(*) AS TotalProductos
    FROM Productos GROUP BY Categoria
) AS T
WHERE T.TotalProductos > 5;

10. 🔑 DCL (Data Control Language) - Control de Acceso

Comandos para gestionar permisos de usuario.


11. 🔄 TCL (Transaction Control Language) - Control de Transacciones

Comandos para gestionar transacciones de base de datos. Una transacción es una secuencia de operaciones que se ejecutan como una única unidad lógica.


12. ⚡ Índices (Indexes)

Mejoran la velocidad de las operaciones de recuperación de datos en una base de datos.


13. 🖼️ Vistas (Views)

Una tabla virtual basada en el conjunto de resultados de una consulta SQL.


14. 💡 Buenas Prácticas y Consejos


Este cheatsheet te proporciona una referencia completa y concisa de SQL, cubriendo sus conceptos esenciales, comandos DDL/DML/DQL/DCL/TCL, operadores, funciones, tipos de JOINs, subconsultas, e importantes buenas prácticas para gestionar y consultar bases de datos relacionales de manera efectiva.