Grupo Oracle por

Grupo Oracle por
Debe consultar información de diferentes tablas o condiciones cuando trabaje con bases de datos relacionales. Luego necesitará combinar los resultados en un conjunto determinado para su uso por la aplicación.Una de las cláusulas más valiosas al consultar la información de la tabla es el grupo por cláusula. Le permite agrupar las filas de un resultado dado en un conjunto de valores basados ​​en una condición dada. Esto hace que sea fácil dividir la información relacionada en un conjunto dado.Por ejemplo, puede usar el grupo por cláusula para dividir la información del empleado en función de su departamento.

Este tutorial le enseñará cómo usar el grupo por cláusula en las bases de datos de Oracle.

Grupo Oracle por declaración

El grupo por cláusula se usa en una declaración selecta para dividir los resultados en varios grupos. La cláusula luego devolverá una fila por grupo.

En la mayoría de los casos, a menudo encontrará el grupo utilizando junto con funciones agregadas como Sum, AVG, Max, etc. En dicho escenario, la cláusula agrupa los datos en particiones coincidentes y luego la función agregada se aplica a cada grupo.

Podemos demostrar que la sintaxis para el grupo por cláusula se muestra en el fragmento a continuación:

Seleccionar col_list
De table_name
Grupo por Expression_1, Expression_2, ... Expression_n;

Tenga en cuenta que el grupo por cláusula se produce después de la cláusula de.

En algunos casos, puede incluir la cláusula WHERE para limitar aún más el alcance de la consulta, como se demuestra en la consulta a continuación:

Seleccionar col_list
De table_name
Donde condición
Grupo por Expression_1, Expression_2, ... Expression_n;

Las filas se agrupan en función de las condiciones especificadas en las expresiones. Tenga en cuenta que la cláusula solo debe incluir las columnas de agrupación.

Sin embargo, Oracle le permite realizar una agrupación multinivel utilizando la palabra clave enrollable, como se ilustra en el fragmento a continuación:

Seleccionar col_list
De table_name
Grupo por Rollup (Expression_1, Expression_2, ... Expression_n);

Uso de ejemplo

El siguiente es un ejemplo utilizado para demostrar el uso del grupo por cláusula en las bases de datos de Oracle.

Utilice sus datos disponibles.

Supongamos que tenemos una tabla con la información como se muestra:

Ejemplo 1 - Grupo básico por uso de la cláusula

La siguiente consulta de ejemplo demuestra cómo usar el grupo por cláusula para agrupar las filas resultantes basadas en el departamento_id.

Seleccione First_Name, Department_ID del grupo de empleados por departamento_id, first_name;

En este caso, la instrucción debe ordenar los resultados de los datos consultados basados ​​en las columnas department_id y First_Name.

La salida resultante se establece a continuación:

Ejemplo 2 - Uso del grupo con una cláusula Where Where

En el ejemplo a continuación, describimos un fragmento de código que demuestra cómo usar el grupo por cláusula junto con una cláusula Where.

Seleccione First_Name, Departamento_ID de los empleados donde departament_id> = 100 grupos por departamento_id, first_name;

En este caso, la instrucción comienza seleccionando las columnas First_Name y Department_ID desde la tabla. Luego filtramos solo las filas cuyo valor de departamento_id es mayor o igual a 100.

Finalmente, aplicamos el grupo por cláusula como lo demuestra la tabla resultante a continuación:

Ejemplo 3 - Uso del grupo por cláusula con una función agregada

Como se indicó, podemos usar el grupo por función con una función agregada. A continuación se proporciona una demostración de ejemplo:

Seleccione First_Name, Department_ID, Sum (Salario) del grupo de empleados por departamento_id, first_name;

La tabla resultante:

Ejemplo 3 - Uso del grupo por cláusula con rollup

El siguiente ejemplo demuestra cómo usar la palabra clave de reminencia para determinar la comisión para cada empleado.

Seleccione Employee_ID, Salario, SUM (Commission_PCT * Salario)
De empleados
Donde comision_pct> = 0
Grupo por rollup (empleado_id, salario);

Resultados:

Conclusión

En esta publicación, exploramos el uso del grupo por cláusula en las bases de datos de Oracle para agrupar un conjunto de filas basadas en una expresión dada.