Agrupar por cláusula en MS SQL Server

Agrupar por cláusula se discutirá en detalle en este artículo.

Hay toneladas de datos presentes en el sistema de base de datos. Aunque los datos están organizados en forma de tabla en el orden correcto, el usuario a veces desea que los datos de la consulta estén agrupados para facilitar el acceso. Para organizar los datos (columnas) en forma de grupos, se debe usar una cláusula denominada group by en la consulta. La cláusula group by organiza los datos según las columnas especificadas en la consulta. La sintaxis básica es-

Sintaxis:

select select_list 
from table_name 
group by column_1 column_2 

A continuación se muestra un ejemplo: Tabla de estudiantes:

Número de rollo Nombre Curso
111 Riya CSE
112 Apurva CEPE
113 Mina mecánico
114 Rita Biotecnología
115 Veena Químico
116 Deepa AEE


En caso de que un usuario desee agrupar datos según el número de rollo, puede hacerlo como se muestra a continuación:

select name
from student 
group by roll number 

Producción –

Nombre Número de rollo
Riya 111
Apurva 112
Mina 113
Rita 114
Veena 115
Deepa 116

De esta manera, la tabla se puede agrupar utilizando la cláusula group by. En la producción en tiempo real, la cláusula group by se utiliza para generar cálculos mediante la aplicación de funciones agregadas (máximo, mínimo, etc.). Los usuarios a menudo confunden las cláusulas group by y order by. La cláusula Order by se utiliza para organizar los datos en orden cronológico. La cláusula Group by se utiliza para organizar los datos en forma de grupos.

Para una mejor comprensión, a continuación se muestra un ejemplo.

Número de rollo Nombre Curso
111 Riya CSE
112 Apurva CEPE
113 Mina mecánico
114 Rita Biotecnología
115 Veena Químico
116 Deepa AEE

Consultas usando ordenar por y agrupar por –

select  roll number
from student 
order by name ASC 

Producción –

Número de rollo Nombre
112 Apurva
116 Deepa
113 Mina
114 Rita
111 Riya
115 Veena

select roll number
from student 
group by  name 

Producción –

Número de rollo Nombre
111 Riya
112 Apurva
113 Mina
114 Rita
115 Veena
116 Deepa

Del ejemplo, podemos notar claramente la diferencia entre las cláusulas group by y order by. En caso de ordenar por, los nombres se ordenan alfabéticamente (AZ). En caso de que el usuario tenga que hacer arreglos desde ZA, puede hacerlo de la siguiente manera.

select 
roll number 
from 
student
order by
name DESC

La salida se organizará de la siguiente manera:

Número de rollo Nombre
115 Veena
111 Riya
114 Rita
113 Mina
116 Deepa
112 Apurva


De esta manera, el arreglo puede ser modificado. En el caso de group by, los datos se ordenan en forma de grupos pero no en orden cronológico. Aquí, la cláusula where no se usa porque genera un error.

Publicación traducida automáticamente

Artículo escrito por mangalgiaishwarya2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *