Conjuntos de agrupación en SQL
Como se discutió anteriormente, SQL nos permite agrupar columnas para proporcionar salidas compiladas en las filas de nuestra tabla de base de datos. Cuando usamos tablas en nuestra base de datos, nos centramos en los valores para tener una mejor comprensión. Aún así, la complejidad y la escalabilidad de los datos hacen que sea una molestia para analizar los datos. Aquí es donde el concepto de conjuntos de agrupación es útil, a través del cual simplificamos las columnas de acuerdo con nuestras necesidades y luego analizamos los datos simplificados con facilidad.
El concepto de conjuntos de agrupación se realiza por el comando "grupo por" y "conjuntos de agrupación". Aunque el comando "Union All" en SQL puede hacer la misma tarea, requiere muchas subcreperias. Impone varias limitaciones, por lo que es inconveniente para el desarrollador e inferior a la idea de los conjuntos de agrupación, que es más conveniente y exacto con precisión. El comando "Union All" exige el número exacto de atributos con tipos de datos idénticos para cada columna, por lo que debemos escribir "nulo" en cada estado de nuestro código, lo que aumenta el número de líneas de consulta.
En las actualizaciones más nuevas de este idioma, el comando "Grupo por" es seguido por el comando "Conjuntos de agrupación", que no requiere varias subteres como el comando y grupos de unión en una forma simplificada. Para implementar este concepto, tendremos que seguir la sintaxis general que se escribe a continuación:
SELECCIONARUsamos varios comandos en la sintaxis anterior:
Agrupación de conjuntos en PostgreSQL
Como estamos familiarizados con la sintaxis de los conjuntos de agrupación ahora, podemos buscar varios ejemplos para tener un buen conocimiento de implementar este concepto en PostgreSQL. Podemos realizar la agrupación con:
Agrupar dos columnas de una tabla
Este ejemplo se referirá a un conjunto de agrupación más simple de solo dos columnas. Primero crearemos una tabla con nombre de registros con atributos, como el número de rollo, el nombre del curso y las marcas, y con la ayuda del código dado en el siguiente fragmento:
Después de crear una tabla, insertaremos algunos valores de datos en las filas de diferentes columnas que compilaremos en el comando de conjuntos de grupos adicionales:
Ahora, escribiremos los siguientes comandos que ayudan en los conjuntos de agrupación en SQL. El número de rollo del estudiante se agrupará por la suma de todas las marcas en todos los cursos:
Cuando ejecutamos el código anterior, obtendremos la siguiente salida:
Como sugiere la salida, todas las filas se agrupan con respecto a la suma de todas las marcas de los cursos. La suma de todas las marcas se muestra contra el mismo número de rollo. Podemos ejecutar esta función incluso con más de un número de balanceo, ya que agrupará el mismo número de rollo de marcas de los estudiantes en la segunda columna contra el número de rollo dado.
Agrupar tres columnas de una tabla
En este ejemplo, crearemos una tabla en nuestra base de datos de 4 columnas diferentes y usaremos el concepto de conjunto de agrupación en la tabla. Primero, tendremos que ejecutar el siguiente código para crear una tabla.
Luego, insertaremos un conjunto de valores para dos estudiantes diferentes para varios cursos, las horas requeridas para el curso y luego las marcas de ese curso.
Después de ejecutar y agregar con éxito los datos anteriores, pasaremos a la agrupación de estos datos con respecto al número de rollo del estudiante y el nombre del curso. Para hacer eso, escribiremos y ejecutaremos el código en el siguiente fragmento:
La salida del código anterior se muestra en la siguiente imagen:
Como puede ver, hemos simplificado la tabla compleja en una simplificada y deseada agrupándola en números de rollo y nombres de cursos y agregando las marcas en caso de repetición. Esto sucedió en el número de rollo "205", cuyas marcas de matemáticas se agregaron dos veces desde que se repitieron.
También podemos agrupar las columnas anteriores solo por el nombre del curso y obtener la suma de las marcas en cada curso. Para eso, escribiremos la siguiente consulta y luego la ejecutaremos:
En esta consulta, solo agrupamos la columna "Nombre del curso", y la columna "Marcas" se agrupó mediante la función agregada "suma". Una vez que se ejecuta esta consulta, la salida sería así:
El resultado muestra una descripción más refinada de la tabla, y esto apunta al hecho de que el concepto de conjuntos de agrupación nos da una versión muy simplificada de la tabla para ayudarnos en nuestro análisis.
Agrupación de conjuntos con el comando "Orden por"
Podemos hacer conjuntos de las columnas y obtener la versión simplificada deseada de la tabla, pero a veces todavía parece desorientado. Por lo tanto, podemos simplificar esto más utilizando el comando "Orden por", que priorizará el atributo de acuerdo con nuestra especificación. Después del comando "Grupo por", este comando se ejecutará. Para comprender mejor el comando "Orden por" con conjuntos de agrupación, usaremos el ejemplo anterior para aplicarlo. A medida que agrupamos con éxito las columnas en la tabla en el último ejemplo, lo pediremos por el nombre del curso y el atributo de marcas.
En esta consulta, hemos colocado que la salida esté en orden alfabético de los nombres del curso como la salida como se muestra a continuación:
También podemos pedir la salida en orden descendente de las marcas escribiendo esta consulta:
Conclusión
En este tutorial, aprendimos sobre el concepto de grupos de grupos en SQL. La ventaja de usar el comando "Grupo por" sobre el comando "Union All" también se discutió en este artículo. Después de eso, también implementamos este concepto de agrupación de conjuntos en el entorno PostgreSQL que nos hizo tener un mejor conocimiento de este importante concepto en el lenguaje de consulta estructurada. Por último, buscamos diferentes formas de implementar este concepto cambiando algunos factores e incluso amplificando los conjuntos de datos para monitorear la eficiencia de salida. Esperamos que hayas encontrado este artículo útil. Consulte otros artículos de Sugerencia de Linux para obtener más consejos e información.