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.
| 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. |