Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
ROW_ función NUMBER de ventana
Determina el número ordinal de la fila actual dentro de un grupo de filas, contando desde 1, según la expresión ORDER BY de la OVER cláusula. Si la cláusula PARTITION BY opcional está presente, los números ordinales se restablecen para cada grupo de filas. Las filas con valores iguales para las expresiones ORDER BY reciben los diferentes números de fila de forma no determinista.
Sintaxis
ROW_NUMBER () OVER ( [ PARTITION BY expr_list ] [ ORDER BY order_list ] )
Argumentos
- ( )
-
La función no toma argumentos, pero se necesitan los paréntesis vacíos.
- OVER
-
Las cláusulas de ventana de la ROW función _. NUMBER
- PARTITIONDE expr_list
-
Opcional. Una o más expresiones que definen la ROW función _. NUMBER
- ORDERPOR order_list
-
Opcional. La expresión que define las columnas en que se basan los números de fila. Si no se especifica PARTITION BY, ORDER BY utiliza toda la tabla.
Si ORDER BY no produce un orden único o se omite, el orden de las filas no es determinista. Para obtener más información, consulte Ordenación única de datos para funciones de ventana.
Tipo de retorno
BIGINT
Ejemplos
En el siguiente ejemplo, se divide la tabla por SELLERID y se ordena cada partición por QTY (en orden ascendente) y, a continuación, se asigna un número de fila a cada fila. Los resultados se ordenan después de que se apliquen los resultados de la función de ventana.
select salesid, sellerid, qty, row_number() over (partition by sellerid order by qty asc) as row from winsales order by 2,4; salesid | sellerid | qty | row ---------+----------+-----+----- 10006 | 1 | 10 | 1 10001 | 1 | 10 | 2 10005 | 1 | 30 | 3 20001 | 2 | 20 | 1 20002 | 2 | 20 | 2 30001 | 3 | 10 | 1 30003 | 3 | 15 | 2 30004 | 3 | 20 | 3 30007 | 3 | 30 | 4 40005 | 4 | 10 | 1 40001 | 4 | 40 | 2 (11 rows)
Para ver una descripción de la tabla WINSALES, consulte Tabla de muestra para ejemplos de funciones de ventana.