// DDL · DML · DCL · SELECT · JOINs · Funciones · Trucos de examen
Resumen de los comandos SQL más importantes para las prácticas y exámenes de ASIR. Organizado por bloques: definición de estructuras (DDL), manipulación de datos (DML), control de acceso (DCL), consultas SELECT, JOINs y funciones.
Crear, modificar y eliminar estructuras de la base de datos.
// Base de datosInsertar, actualizar y eliminar datos.
// INSERTGestión de usuarios y permisos.
Orden obligatorio de las cláusulas:
| JOIN | Cuándo usarlo |
|---|---|
| INNER JOIN | Solo filas con pareja en ambas tablas |
| LEFT JOIN | Todos los de la tabla izquierda, aunque no tengan pareja |
| RIGHT JOIN | Todos los de la tabla derecha, aunque no tengan pareja |
| WHERE | HAVING | |
|---|---|---|
| Cuándo | Antes de agrupar | Después de GROUP BY |
| Filtra | Filas individuales | Grupos / agregados |
| Funciones | No acepta COUNT, AVG… | Sí acepta COUNT, AVG… |
| Función | Qué hace |
|---|---|
| COUNT(*) | Cuenta filas |
| SUM(col) | Suma |
| AVG(col) | Media aritmética |
| MAX(col) | Máximo |
| MIN(col) | Mínimo |
| ROUND(n,2) | Redondea 2 decimales |
| Función | Ejemplo |
|---|---|
| UPPER(c) | 'hola' → 'HOLA' |
| LOWER(c) | 'HOLA' → 'hola' |
| LENGTH(c) | 'Hola' → 4 |
| CONCAT(a,b) | 'Ho'+'la' → 'Hola' |
| TRIM(c) | ' Hola ' → 'Hola' |
| SUBSTR(c,2,3) | 'Hola' → 'ola' |
| Función | Resultado |
|---|---|
| CURDATE() | Fecha de hoy |
| NOW() | Fecha y hora actuales |
| YEAR(fecha) | YEAR('2025-06-10') → 2025 |
| MONTH(fecha) | MONTH('2025-06-10') → 6 |
| DATEDIFF(f1,f2) | Días entre dos fechas |
| Situación | Solución |
|---|---|
| Incluir filas sin pareja | LEFT JOIN |
| Filtrar resultado agrupado | HAVING |
| Comparar con NULL | IS NULL |
| Sin duplicados | SELECT DISTINCT |
| Primeros N resultados | ORDER BY x DESC LIMIT N |
| Comparar con media | WHERE x > (SELECT AVG(x) FROM …) |
| Varios valores posibles | IN ('A', 'B') |
| Rango de valores | BETWEEN min AND max |
| Sentencias | Tipo |
|---|---|
| CREATE / ALTER / DROP / TRUNCATE | DDL |
| SELECT / INSERT / UPDATE / DELETE | DML |
| GRANT / REVOKE / CREATE USER | DCL |