Resumen: En este tutorial, aprenderá a usar la función Oracle RANK()
para calcular el rango de filas dentro de un conjunto de filas.
Introducción a la función Oracle RANK ()
la funciónRANK()
es una función analítica que calcula el rango de un valor en un conjunto de valores.
la función RANK()
devuelve el mismo rango para las filas con los mismos valores. Agrega el número de filas empatadas al rango empatado para calcular el siguiente rango., Por lo tanto, los rangos no pueden ser números consecutivos.
la función RANK()
es útil para consultas top-n y bottom-N.
el siguiente ejemplo ilustra La sintaxis de la etiqueta RANK()
función:
El order_by_clause
se requiere. Especifica el orden de filas en cada partición a la que se aplica la función RANK()
.
la cláusula query partition, si está disponible, divide las filas en particiones a las que se aplica la función RANK()
., En caso de que se omita la causa de la partición de consulta, todo el conjunto de resultados se trata como una sola partición.,tabla de nombre rank_demo
que consta de una columna:
en Segundo lugar, insertar algunas filas en el rank_demo
tabla:
Tercer lugar, la consulta de la etiqueta rank_demo
tabla:
el Cuarto, el uso de la etiqueta RANK()
función para calcular el rango para cada fila de la etiqueta rank_demo
tabla:
El siguiente ejemplo muestra la salida:
Las dos primeras filas recibido el mismo rango 1., La tercera fila obtuvo el rango 3 porque la segunda fila ya recibió el rango 1. Las siguientes tres filas recibieron el mismo rango 4 y la última fila obtuvo el rango 7.
ejemplos de funciones Oracle RANK ()
usaremos la tabla products
de la base de datos de muestra para la demostración.,
ejemplo simple de la función Oracle RANK ()
la siguiente declaración calcula el rango de cada producto por su precio de Lista:
Aquí está la salida parcial:
para obtener los 10 productos más caros, use la siguiente instrucción:
en este ejemplo, la expresión de tabla común devolvió productos con sus rangos y la consulta externa seleccionada solo los primeros 10 productos más caros.,
Aquí está la salida:
usando la función Oracle RANK() con partición por ejemplo
el siguiente ejemplo devuelve los 3 productos más caros para cada categoría:
este ejemplo:
- Primero, la cláusula
PARTITION BY
dividió los productos en varias particiones por categoría. - Luego, la cláusula
ORDER BY
ordenó las filas en cada partición por precio de lista en orden descendente., - Finalmente, la función
RANK()
calculó el rango para cada fila en cada partición. Reinicializó el rango para cada partición.
El siguiente ejemplo muestra la salida:
En este tutorial, usted ha aprendido cómo calcular el rango de un valor en un conjunto de valores mediante el uso de Oracle RANK()
función.
- ¿Fue útil este tutorial?
- YesNo
Leave a Reply