1. Cláusula
WHERE: La cláusula WHERE se usa para filtrar los registros de la tabla o se usa al unir más de una tabla. Solo se extraerán los registros que cumplan la condición especificada en la cláusula WHERE. Se puede usar con sentencias SELECT, UPDATE, DELETE.
Consideremos la siguiente tabla «Estudiante»
Roll_no S_Name Age 1 a 17 2 b 20 3 c 21 4 d 18 5 e 20 6 f 17 7 g 21 8 h 17
Considere la consulta:
SELECT S_Name, Age FROM Student WHERE Age >=18
La SALIDA de la consulta anterior es:
S_Name Age b 20 c 21 d 18 e 20 g 21
2. Cláusula
HAVING: la cláusula HAVING se utiliza para filtrar los registros de los grupos en función de la condición dada en la cláusula HAVING. Aquellos grupos que satisfagan la condición dada aparecerán en el resultado final. La cláusula HAVING solo se puede usar
con la instrucción SELECT.
Consideremos la tabla Student mencionada anteriormente y apliquemos la cláusula que tiene sobre ella:
SELECT Age, COUNT(Roll_No) AS No_of_Students FROM Student GROUP BY Age HAVING COUNT(Roll_No) > 1
La SALIDA de la consulta anterior es:
Age No_of_Students 17 3 20 2 21 2
Diferencia entre la cláusula Where y Have en SQL:
NO SEÑOR. | Dónde cláusula | HABER Cláusula |
---|---|---|
1. | La cláusula WHERE se utiliza para filtrar los registros de la tabla en función de la condición especificada. | La cláusula HAVING se utiliza para filtrar registros de los grupos en función de la condición especificada. |
2. | La cláusula WHERE se puede usar sin la cláusula GROUP BY | La cláusula HAVING no se puede utilizar sin la cláusula GROUP BY |
3. | La cláusula WHERE implementa operaciones en fila | Cláusula HAVING implementa en operación de columna |
4. | La cláusula WHERE no puede contener una función agregada | La cláusula HAVING puede contener una función agregada |
5. | La cláusula WHERE se puede usar con la declaración SELECT, UPDATE, DELETE. | La cláusula HAVING solo se puede usar con la instrucción SELECT. |
6. | La cláusula WHERE se usa antes de la cláusula GROUP BY | La cláusula HAVING se usa después de la cláusula GROUP BY |
7. | WHERE Clause se usa con una función de fila única como SUPERIOR, INFERIOR, etc. | La cláusula HAVING se usa con funciones de varias filas como SUM, COUNT, etc. |
Publicación traducida automáticamente
Artículo escrito por nishthagoel712 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA