Diferencia entre la cláusula Have y Where

Tener vs cláusula donde

Las máquinas, las computadoras en particular, están diseñadas como un medio de comunicación humana. Como tales, se crean de tal manera que sus comportamientos están controlados por programas que utilizan lenguaje artificial. Las computadoras no pueden utilizar un lenguaje natural como el inglés porque el vocabulario es demasiado extenso y cambia constantemente.



El lenguaje informático debe ser exacto y preciso porque las computadoras no tienen sentido común, por lo que se basa en un algoritmo que puede calcular y procesardatosasí como permitir que las computadoras razonen. Hay varioscomputadoraidiomas que tienenestadocreado. Cada uno de ellos tiene dos componentes, la sintaxis oformary la semántica o significado.

Existen lenguajes de ensamblaje, concurrentes, de flujo de datos, de definición, funcionales, intermedios, lógicos, procedimentales y de consulta. Los lenguajes de consulta se utilizan para realizar consultas sobre bases de datos yinformaciónsistemas. Uno de esos lenguajes es el lenguaje de consulta estructurado (SQL).
SQL es un lenguaje informático de base de datos con las siguientes funciones:datosinsertar, actualizar y borrar, acceder y controlar, y controlar y modificar esquemas. Además, se subdivide en los siguientes elementos:

Expresiones
Predicados
Consultas
Declaraciones
Cláusulas

SQL tiene las siguientes cláusulas:

Cláusula de restricción
Para la cláusula de actualización
De cláusula
Cláusula Group BY
Orden por cláusula
Donde la cláusula actual de
Tener cláusula
Dónde cláusula

La cláusula having siempre se usa con la cláusula group by. Se utiliza para filtrar los registros devueltos por una cláusula group by utilizando un predicado. Los resultados de una cláusula group by están restringidos mediante la cláusula having y solo se seleccionan las filas especificadas.

Es similar a una cláusula where y una consulta puede tener una cláusula have y where. En este caso, la cláusula where se usa primero y después de agrupar filas individuales, se usa la cláusula having. La cláusula have se aplica al grupo en su conjunto, mientras que la cláusula where se aplica a filas individuales.
La cláusula where se utiliza para seleccionar filas que se incluirán en la consulta y utiliza un predicado de comparación y excluye las filas que el predicado de comparación no evalúa como verdaderas. Se utiliza en condiciones que se refieren a funciones agregadas y para seleccionar filas individuales en una tabla que se especifica en una cláusula from.
Sin él, el conjunto de filas resultanteharíallegar a ser muy grande. Utiliza los siguientes operadores: = o igual, o no igual,> o mayor que, = o mayor o igual,<= or less than or equal, BETWEEN, LIKE, and IN.

Resumen

1.La cláusula having se usa en filas agrupadas, mientras que la cláusula where se usa en filas individuales.
2.Cuando se usan juntos, la cláusula where se usa primero para seleccionar qué filas se deben agrupar y luego se usa la cláusula having.
3.La cláusula having se usa con una cláusula group by mientras que la cláusula where se utiliza en filas especificadas por una cláusula from.