Middle
Pregunta estándar sobre SQL: ¿Cuál es la diferencia entre WHERE y HAVING?
sobes.tech AI
Respuesta de la IA
La principal diferencia entre WHERE y HAVING en SQL radica en la etapa en la que filtran los datos:
WHEREfiltra las filas antes de la agrupación. Se usa para limitar el conjunto de datos original.HAVINGfiltra los grupos después de aplicar funciones de agregación y agrupación (GROUP BY).
Ejemplo:
SELECT departamento, COUNT(*) as cantidad_empleados
FROM empleados
WHERE salario > 50000 -- filtramos empleados con salario > 50000
GROUP BY departamento
HAVING COUNT(*) > 10 -- seleccionamos departamentos con más de 10 empleados así
Aquí, WHERE limita las filas originales, y HAVING los grupos finales.