En esta publicación, encontrará la función Rank () en las bases de datos Oracle que le permite determinar el rango de una fila de un conjunto dado de filas.
Función de rango de Oracle
La función de rango () en Oracle nos permite asignar un rango a cada fila en un conjunto de resultados. La función asigna el mismo rango a todas las filas con valores similares y agrega un número a la siguiente fila en el rango.
Podemos expresar la sintaxis para la función como se muestra en la siguiente:
Rank () Over (La función admite los siguientes parámetros:
Ejemplos de funciones Oracle Rank ()
Para ilustrar cómo usar la función rank () en Oracle, usaremos la colección predeterminada de la tabla de empleados.
Considere la siguiente tabla:
Seleccione First_Name, Last_Name, Salario, Job_id de Empleados EMP;Resultado:
Ejemplo 1: Uso de la función de rango para determinar el rango
Este ejemplo demuestra el uso de la función de rango () para determinar el rango de cada empleado en la tabla.
Seleccione First_Name, Last_Name, Salario, Job_id, Rank () Over (Orden por ASC) como RankEn la consulta proporcionada, utilizamos la función de rango para asignar una clasificación a cada fila en la tabla de empleados en función de los valores en la columna salarial.
La función utiliza la cláusula "Orden por" para especificar el orden en que se clasifican las filas. En nuestro ejemplo, utilizamos el orden ascendente basado en el valor de la columna salarial.
La función luego asigna la fila con el salario más bajo un rango de 1 y el rango salarial más alto de n, donde n representa el número de filas en la tabla.
Como puede notar, las filas con valores salariales similares se asignan el mismo rango.
Ejemplo 2: Uso de la función de rango con orden por cláusula
Supongamos que deseamos agrupar las filas basadas en el trabajo_id y luego asignar un rango a las filas en cada partición.
Podemos ejecutar una consulta como se muestra en la siguiente:
Seleccione First_Name, Last_Name, Salario, Job_id, Rank () Over (La partición por cláusula divide las filas de la tabla del empleado en los diversos grupos en función de la columna Job_id.
La función de rango luego asigna una clasificación a cada fila en cada partición con el salario más bajo en cada partición que recibe un rango de 1 y el salario más alto en cada partición que recibe un rango de n (donde n es el número de filas en la partición).
Resultado:
Conclusión
En este tutorial, aprendiste a usar la función de rango de Oracle (). Aunque la función de rango () puede ser beneficiosa, puede conducir a un éxito de rendimiento, especialmente cuando se trabaja con consultas complejas y grandes conjuntos de datos.