Junior — Middle
Explique las diferencias entre el operador HAVING y la condición WHERE en SQL y en qué casos se deben usar.
sobes.tech AI
Respuesta de la IA
En SQL, la condición WHERE filtra las filas antes de la agrupación, mientras que HAVING lo hace después de la agrupación.
- WHERE se aplica a filas individuales de la tabla y limita el conjunto de datos que será agregado.
- HAVING se aplica a los resultados de funciones agregadas y filtra los grupos formados por la cláusula GROUP BY.
Ejemplo:
SELECT departamento, COUNT(*) as cantidad_empleados
FROM empleados
WHERE salario > 50000 -- filtramos empleados con salario superior a 50000
GROUP BY departamento
HAVING COUNT(*) > 10 -- seleccionamos departamentos con más de 10 empleados
Utilice WHERE para filtrar los datos originales y HAVING para filtrar los resultados agregados.