Referencia de SQL
Cada palabra clave tiene una explicación breve, un ejemplo que funciona con los datos de práctica de la tienda y los errores más habituales.
- SELECTElige qué columnas leer de una tabla, y en qué orden.
- WHEREConserva solo las filas que cumplen una condición. Se ejecuta antes de agrupar.
- ORDER BYOrdena las filas del resultado. Sin esta cláusula, el orden no está garantizado.
- DISTINCTElimina las filas duplicadas del resultado, para que cada valor o combinación aparezca una sola vez.
- LIKECompara texto con un patrón. % representa cualquier secuencia de caracteres; _ representa exactamente uno.
- INComprueba si un valor está en una lista. Es más corto que varias condiciones OR.
- NULLUn valor ausente. No es cero ni una cadena vacía, y nunca es igual a nada, ni siquiera a NULL.
- COUNT, SUM y AVGFunciones de agregación: convierten muchas filas en un solo valor, o en un valor por grupo.
- GROUP BYCrea una fila de resultado por cada valor distinto (o combinación de valores) y, después, agrega cada grupo.
- HAVINGFiltra los grupos después de agregarlos. WHERE filtra las filas antes.
- JOIN (INNER y LEFT)Combina filas de dos tablas cuando coincide una clave. Un INNER JOIN conserva solo las coincidencias; un LEFT JOIN conserva todas las filas de la tabla izquierda.
- INSERT, UPDATE y DELETECambia los datos: añade filas, modifica valores de filas y elimina filas.
- CASEElige un valor por fila, según condiciones. Funciona como IF e IFS en Excel.
- WITH (expresiones de tabla comunes)Da nombre a una subconsulta con WITH y, después, léela en la consulta principal como si fuera una tabla.
- EXISTS y NOT EXISTSComprueba si una subconsulta encuentra alguna fila. EXISTS es verdadero cuando la encuentra; NOT EXISTS es verdadero cuando no encuentra ninguna.
- Funciones de ventana: OVERCalcula sobre filas sin contraerlas. OVER indica qué filas mirar, como RANK y los totales acumulados en Excel.
- UNION y UNION ALLApila las filas de dos consultas en un solo resultado. UNION elimina los repetidos; UNION ALL los conserva.
- RIGHT JOIN y FULL JOINUn RIGHT JOIN conserva todas las filas de la tabla derecha. Un FULL JOIN conserva las filas sin coincidencia de ambas tablas.
- Funciones de texto y fechaUne textos, cambia las mayúsculas, extrae una parte de un valor y resta fechas para obtener días.
- CREATE TABLE y restriccionesCrea una tabla nueva y define las reglas que deben cumplir sus datos.
- Transacciones: BEGIN, COMMIT y ROLLBACKUna transacción agrupa cambios. COMMIT los guarda; ROLLBACK los deshace.
- MIN y MAXDevuelven el valor más pequeño o más grande de una columna. Funcionan con números, fechas y texto.
- LAG y LEADFunciones de ventana que leen un valor de la fila anterior (LAG) o de la siguiente (LEAD), sin necesidad de un self-join.
- INTERSECT y EXCEPTCombina los resultados de dos consultas: conserva las filas que están en ambas (INTERSECT) o solo en la primera (EXCEPT).
- CAST y ::Convierte un valor a otro tipo de dato.
- LIMIT y OFFSETDevuelve solo algunas filas: las primeras n, o una página que empieza después de m filas.
- ALTER TABLE, CREATE VIEW y CREATE INDEXCambia la estructura de una tabla, guarda una consulta con un nombre y acelera las búsquedas.
- STRING_AGG, FILTER y ROLLUPUne los valores de cada grupo en un texto, cuenta según una condición y añade filas de subtotales.
- ON CONFLICT y RETURNINGInserta una fila o actualiza la existente (upsert), y devuelve las filas que cambiaron.