Función RANGO SQL() es una función de ventana utilizada en servidor SQL que calcula el rango de cada fila del conjunto resultante .
Función RANGO en SQL Server
La función RANK en el servidor SQL se utiliza para asignar una clasificación a cada fila en función de su valor.
Se asigna el mismo rango a las filas que tienen los mismos valores. Los rangos no podrán ser consecutivos en el Función RANGO() ya que suma el número de filas repetidas al rango repetido para calcular el rango de la siguiente fila.
Sintaxis
La sintaxis para utilizar la función RANK en SQL Server es:
RANGO() SOBRE (
[PARTICIÓN POR expresión,]
ORDENAR POR expresión (ASC | DESC) );
Nota:
Algunas otras funciones de clasificación utilizadas en SQL Server son:
- NUMERO DE FILA()
- RANGO_DENSO()
- NTILE()
Ejemplo de función RANGO SQL
Veamos algunos ejemplos de la función RANK en el servidor SQL para comprender cómo funciona.
Creemos una tabla de demostración en la que realizaremos la declaración RANK. Escriba las siguientes consultas para crear una tabla geek_demo.
CREATE TABLE geek_demo (Name VARCHAR(10) ); INSERT INTO geek_demo (Name) VALUES ('A'), ('B'), ('B'), ('C'), ('C'), ('D'), ('E'); SELECT * FROM sales.geek_demo;>
Producción
Nombre |
---|
A |
B |
B |
C |
C |
D |
Y |
En este ejemplo, usaremos RANK() para asignar clasificaciones a las filas en el conjunto de resultados de la tabla geek_demo.
Consulta:
SELECT Name, RANK () OVER ( ORDER BY Name ) AS Rank_no FROM geek_demo;>
Producción -
Nombre | Rank_no |
---|---|
A | 1 |
B | 2 |
B | 2 |
C | 4 |
C | 4 |
D | 6 |
Y | 7 |
Puntos importantes sobre la función SQL RANK
- La función SQL RANK es una función de ventana que se utiliza en SQL Server para calcular una clasificación para cada fila.
- Asigna una clasificación única a cada fila dentro de la partición, con espacios en los valores de clasificación si hay empates.
- La función CLASIFICAR le permite clasificar filas según una columna o un conjunto de columnas específico, proporcionando un orden claro de precedencia dentro del conjunto de resultados.
- Cuando usamos la función SQL RANK con Cláusula ORDEN POR , el conjunto de resultados se devuelve con filas ordenadas en cada partición donde se aplica la función RANK.
- Se asigna el mismo rango a las filas que tienen los mismos valores.