Funciones analíticas de ventana

Las funciones analíticas incluyen agregación de ventanas, agregación de informes, desfase y adelanto, primero y último, clasificación y familias de recuento de filas. En la tabla siguiente se describen las palabras clave de las funciones analíticas.
Tabla 1. Palabras clave de las funciones analíticas
Sintaxis Descripción
TODOS Aplica la función analítica a todos los valores. Este valor es el valor predeterminado y no necesita especificarlo.
ASC | DESC Especifica la secuencia de orden, ya sea ascendente o descendente.
ENTRE . Y Especifica los puntos de inicio y de finalización para la ventana. La primera expresión (before and) especifica el inicio; la segunda expresión (after and) especifica el final.
FILA ACTUAL Como punto de partida, especifica que la ventana comienza en el valor o la fila actual. Como punto de finalización, especifica que la ventana finaliza en el valor o fila actual.
DISTINCT Especifica que la función que agrega resultado para cada valor exclusivo. DISTINCT no se admite para las funciones FIRST_VALUE, LAST_VALUE, LEAD o LAG. Tampoco se da soporte a las funciones STDDEV, STDDEV_POP, STDDEV_SAMP, VARIANCE, VAR_POP, OR VAR_SAMP en un agregado de ventana o agrupado.
EXCLUDE CURRENT ROW Especifica la exclusión de la fila actual.
EXCLUDE GROUP Especifica la exclusión de la fila actual y todas las filas que están enlazadas a ella. Los enlaces se producen cuando hay una coincidencia en la columna o columnas de orden.
EXCLUDE NO OTHERS Especifica no excluir ninguna fila. Este es el valor predeterminado si especifica no exclusión.
EXCLUDE TIES Especifica la exclusión de todas las filas que están vinculadas con la fila actual (filas iguales), pero reteniendo la fila actual.
NULLS {FIRST | LAST} Especifica si se muestran los nulos antes o después de los valores no nulos en la clasificación de ordenación. De forma predeterminada, los valores nulos se ordenan como si fueran más bajos que cualquier valor no nulo; es decir, NULLS FIRST es el valor predeterminado para el orden DESC, de lo contrario es NULLS LAST.
ORDER BY Especifica cómo se ordenan los datos dentro de una partición. Puede ordenar los valores en varias claves, cada una definida por una secuencia de ordenación.
OVER Indica que la función opera en un conjunto de resultados de la consulta que se calcula después de las cláusulas FROM, WHERE y HAVING. Utilice over para definir la ventana de filas que se va a incluir en la función.
PARTITION BY Particiona el resultado de consultas en grupos que se basan en una o más columnas. Si omite esta cláusula, la consulta gestiona el resultado de la consulta como una única partición.
ROWS | RANGE Define la ventana como filas físicas o como un rango lógico. Para utilizar el rango between, debe especificar la cláusula order by.
UNBOUNDED FOLLOWING Especifica que la ventana termina en la última fila de la partición. Si no hay partición por cláusula, el final es la última fila del conjunto de datos.
UNBOUNDED PRECEDING Especifica que la ventana comienza en la primera fila de la partición. Si no hay partición por cláusula, el inicio es la primera fila del conjunto de datos.