“Conocimiento software>SQL Server

¿Cuál es la diferencia entre dónde y tener cláusulas SQL?

2011/8/2
Las cláusulas `wher` y` tener 'en SQL tienen diferentes propósitos, aunque ambas filtran filas según las condiciones. Aquí hay un desglose:

Where cláusula

* Propósito: Filtra filas antes Cualquier operación de agregación (como `Sum`,` AVG`, `Count`, etc.).

* se aplica a: Filas individuales.

* Condiciones: Típicamente implica comparaciones y operadores lógicos que operan en columnas individuales dentro de la tabla.

* Ejemplo:

`` `SQL

Seleccionar * de los clientes donde país ='USA';

`` `` ``

Esta consulta recupera a todos los clientes de la tabla de 'clientes' donde la columna 'país' es igual a 'USA'.

Tener cláusula

* Propósito: Filtra filas después de Operaciones de agregación.

* se aplica a: Los resultados de la agregación (grupo por).

* Condiciones: Por lo general, implica comparaciones de valores agregados utilizando funciones agregadas (por ejemplo, `suma (precio)`, `AVG (Age)`, `Count (*)`) en combinación con operadores lógicos.

* Ejemplo:

`` `SQL

Seleccione City, AVG (Age) como promedio_age

De los clientes

Grupo de la ciudad

Tener promedio_age> 30;

`` `` ``

Esta consulta agrupa a los clientes de 'City' y calcula la edad promedio para cada ciudad. Luego, filtra los resultados para mostrar solo las ciudades donde la edad promedio es mayor que 30.

Diferencias clave en una copa de nuez:

* Tiempo: 'Where` filtros antes de la agregación,' tener 'filtros después.

* Alcance: 'Where' funciona en filas individuales, 'tener' funciona en resultados agregados.

* Condiciones: 'Where' usa condiciones en columnas individuales, 'tener' usa condiciones en valores agregados.

Cuándo usar cada cláusula:

* Use `Where` cuando desea filtrar datos en función de los valores de la fila individual antes de que ocurra cualquier agregación.

* Use `tener 'cuando desee filtrar resultados agregados (como datos agrupados) en función de las condiciones que involucran valores agregados.

nota: Puede usar las cláusulas `wher` y` tener 'en la misma consulta, pero' Where` se aplica primero para filtrar las filas utilizadas para la agregación, y luego 'tener' se usa para filtrar los resultados agregados.

SQL Server
¿Cuál es la sintaxis para el nombre de restricción predeterminado proporcionado por Oracle11g Server?
Cómo cambiar SQL Server Express al modo mixto
¿Seleccione el que no coincide con Oracle b Linux c Ingress d DB2?
Cómo ejecutar secuencias de comandos SQL desde un Microsoft SQL Server Express
¿Cuál es la dirección de correo electrónico para los ejecutivos de Oracle?
Cómo mantener una base de datos de 2008 Microsoft SQL Server
¿Cuál es el término para columnas de datos como el nombre?
¿Cuál es la diferencia entre el servidor MySQL y MsSQL?
Conocimiento de la computadora © http://www.ordenador.online