Un LEFT JOIN devuelve todas las filas de la tabla izquierda y las filas coincidentes de la tabla derecha, con NULL para las filas sin coincidencia en la tabla derecha.
Un INNER JOIN devuelve filas donde la condición de unión coincide con filas de ambas tablas. Las filas no coincidentes no se incluyen en el conjunto de resultados.
Una subconsulta correlacionada hace referencia a columnas de su consulta externa. Su resultado depende conceptualmente de la fila externa actual; el optimizador puede transformar la ejecución, por lo que no se garantiza una ejecución física independiente por cada fila.
¿Cuál es el propósito de la cláusula WITH (Expresión de Tabla Común) en SQL?
La cláusula WITH, o Expresión de Tabla Común (CTE), se usa para definir un conjunto de resultados temporal que puede ser referenciado dentro de la consulta principal. En PostgreSQL, WITH puede adjuntarse a sentencias como SELECT, INSERT, UPDATE, DELETE o MERGE.
Esto puede ayudar a mejorar la legibilidad y mantenibilidad de consultas complejas.
El operador IN filtra filas para que coincidan con cualquiera de los valores de una lista especificada, a menudo como alternativa a múltiples condiciones OR.
Aunque puede devolver “filas únicas” (y a menudo lo hace), no es necesariamente su objetivo principal.
No se requiere un índice. Un índice B-tree adecuado puede ayudar con un filtro IN selectivo, pero el planificador puede preferir un recorrido secuencial si hay muchas coincidencias o la tabla es pequeña. UNIQUE impone una restricción sobre los datos; no es un requisito para optimizar IN.
La función COALESCE devuelve el primer valor no NULL de una lista especificada, útil para sustituir valores predeterminados cuando se encuentran NULLs.
Por ejemplo, COALESCE(column_name, 0) devolvería 0 si column_name es NULL.
¿Cuál es el propósito de la cláusula GROUP BY en SQL?
La cláusula GROUP BY agrupa filas que tienen los mismos valores en las columnas especificadas, permitiendo que se apliquen funciones de agregación a cada grupo.