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_listTenga 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_listLas 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_listUso 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)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.