Cláusulas

 

Predicados Where Select From Group By Order By Having Volver

Cláusula GROUP BY

 

Combina registros con valores idénticos en la lista de campos especificados en un único registro. Si incluye una función de agregado de SQL, como Suma o Cuenta en la instrucción SELECT, se crea un valor de resumen.

Sintaxis

SELECT listadecampos
FROM tabla
WHERE criterios
[GROUP BY listadecamposdegrupo]

Una instrucción SELECT que contiene una cláusula GROUP BY consta de las siguientes partes:

Parte

Descripción

listadecampos

Nombre del campo o campos que se van a recuperar junto con cualquier alias de nombre de campo, funciones de agregado de SQL, predicados de selección (ALL, DISTINCT, DISTINCTROW o TOP) u otras opciones de la instrucción SELECT.

 

tabla

Nombre de la tabla de la cual se recuperan los registros.

 

criterios

Criterios de selección. Si la instrucción incluye una cláusula WHERE, el motor de base de datos Microsoft Jet agrupa los valores después de aplicar las condiciones WHERE a los registros.

 

listadecamposdegrupo

Nombres de hasta un máximo de 10 campos utilizados para agrupar registros. El orden de los nombres de campo de listadecamposdegrupo determina los niveles de agrupación desde el nivel más alto al nivel más bajo.

 Comentarios

GROUP BY es opcional

Los valores de resumen se omiten si no hay una función de agregado de SQL en la instrucción SELECT.

Los valores Nulos de los campos GROUP BY se agrupan y no se omiten. No obstante, los valores Nulos no se evalúan en ninguna función de agregado de SQL.

Utilice la cláusula WHERE para excluir filas que no desea que estén agrupadas; utilice la cláusula HAVING para filtrar registros después de que hayan sido agrupados.

A menos que contenga datos Memo o un Objeto OLE un campo de la lista de campos GROUP BY puede hacer referencia a cualquier campo de cualquier tabla enumerada en la cláusula FROM, incluso si el campo no se incluye en la instrucción SELECT, siempre y cuando la instrucción SELECT incluya al menos una función de agregado de SQL. El motor de base de datos Microsoft® Jet no puede formar grupos en los campos Memo u Objeto OLE.

Todos los campos de la lista de campos SELECT deben estar incluidos en la cláusula GROUP BY o estar incluidos como argumentos de una función de agregado de SQL.

 

Volver

 

 

*