Fonctions analytiques de fenêtre
Les fonctions analytiques comprennent l'agrégation par fenêtre, l'agrégation par rapport, le décalage et l'avance, le premier et le dernier, le classement et les familles de comptage de lignes. Le tableau suivant décrit les mots-clés de la fonction analytique.
Syntaxe | Descriptif |
---|---|
TOUT | Applique la fonction analytique à toutes les valeurs. Cette valeur est la valeur par défaut et il n'est pas nécessaire de la spécifier. |
ASC | DESC | Spécifie la séquence de classement, soit ascendante, soit descendante. |
ENTRE . ET | Spécifie les points de départ et d'arrivée de la fenêtre. La première expression (avant et) indique le début ; la deuxième expression (après et) indique la fin. |
Ligne en cours | Comme point de départ, spécifie que la fenêtre commence à la ligne ou à la valeur actuelle. En tant que point final, spécifie que la fenêtre se termine à la ligne ou à la valeur actuelle. |
DISTINCT | Spécifie que la fonction agrège les résultats pour chaque valeur unique. DISTINCT n'est pas pris en charge pour les fonctions FIRST_VALUE, LAST_VALUE, LEAD ou LAG. Elle n'est pas non plus prise en charge pour les fonctions STDDEV, STDDEV_POP, STDDEV_SAMP, VARIANCE, VAR_POP, OU VAR_SAMP dans un agrégat groupé ou fenêtré. |
EXCLURE LA LIGNE ACTUELLE | Spécifie l'exclusion de la ligne actuelle. |
GROUPE EXCLUDE | Spécifie l'exclusion de la ligne actuelle et de toutes les lignes qui lui sont liées. Il y a égalité lorsqu'il y a une correspondance dans la ou les colonnes d'ordre. |
N'EXCLURE PERSONNE D'AUTRE | Spécifie de n'exclure aucune ligne. Cette valeur est la valeur par défaut si vous n'indiquez aucune exclusion. |
EXCLURE LES LIENS | Spécifie l'exclusion de toutes les lignes liées à la ligne actuelle (lignes homologues), tout en conservant la ligne actuelle. |
NULLES {FIRST | LAST} | Spécifie si les valeurs nulles s'affichent avant ou après les valeurs non nulles dans l'ordre de tri. Par défaut, les valeurs nulles sont triées comme si elles étaient inférieures à toute valeur non nulle, c'est-à-dire que NULLS FIRST est la valeur par défaut pour l'ordre DESC, et NULLS LAST dans le cas contraire. |
ORDER BY | Spécifie comment les données sont ordonnées au sein de la partition. Vous pouvez ordonner les valeurs sur plusieurs clés, chacune étant définie par une séquence d'ordonnancement. |
DÉPASSEMENT | Indique que la fonction opère sur un ensemble de résultats de requête calculé après les clauses FROM, WHERE et HAVING. Utilisez over pour définir la fenêtre des lignes à inclure dans la fonction. |
Partition par | Divise le résultat de la requête en groupes basés sur une ou plusieurs colonnes. Si vous omettez cette clause, la requête traite le résultat de la requête comme une seule partition. |
ROWS | RANGE | Définit la fenêtre en tant que lignes physiques ou en tant que plage logique. Pour utiliser l'intervalle entre, vous devez spécifier la clause order by. |
SUIVI NON CONSOLIDÉ | Spécifie que la fenêtre se termine à la dernière ligne de la partition. S'il n'y a pas de clause de partition par, la fin est la dernière ligne de l'ensemble de données. |
NON BORNÉ PRÉCÉDENT | Spécifie que la fenêtre commence à la première ligne de la partition. S'il n'y a pas de clause de partition par, le début est la première ligne de l'ensemble de données. |