LAST
Description
LAST
est une fonction d'agrégation de fenêtre qui partitionne les rangées en groupes, trie les rangées en fonction d'un champ et retourne la valeur de la dernière rangée du groupe.La
PARTITION BY
La clause détermine quels champs utiliser pour partitionner un ensemble de rangées d'entrée en groupes. La ORDER BY
La clause détermine comment classer les rangées dans la partition.Workday sépare les rangées d'entrée en groupes en fonction des champs de partitionnement, trie les rangées en fonction des champs de classement, puis calcule l'expression d'agrégation (dernière pour cette fonction) dans chaque groupe.
Syntaxe
whereLAST(input_field)OVER(PARTITION BYpartitioning_field[,partitioning_field]ORDER BYordering_field[ASC | DESC] [,ordering_field[ASC | DESC]]ROWSBETWEENstart_window_boundaryANDend_window_boundary)start_window_boundarycan be:and whereCURRENT ROWend_window_boundarycan be:UNBOUNDED FOLLOWING
Valeur de retour
Retourne une valeur du même type que
Input_field
.Paramètres d'entrée
- input_field
- Est obligatoire. Le champ sur lequel exécuter la fonction d'agrégation. Vous pouvez utiliser n’importe quel champ numérique ou un champ Devise.
- OVER()
- Est obligatoire.OVERdoit être utilisé dans un délai d'unLASTl'expression.
- PARTITION BYpartitioning_field
- Est obligatoire. Utilisez laPARTITION BYclause pour indiquer un ou plusieurs champs à utiliser pour partitionner un groupe de rangées d'entrée. Vous pouvez indiquer n’importe quel type de champ sauf Devise. Exemple : vous indiquez le champ Mois comme champ de partitionnement. Par conséquent, Workday regroupe dans une seule partition tous les enregistrements qui ont la même valeur pour le mois.
- ORDER BYordering_field
- Est obligatoire. Utilisez laORDER BYclause pour indiquer comment classer les rangées d'entrée dans la partition en utilisant les valeurs du champ précisé dans chaque partition. Vous pouvez indiquer n’importe quel type de champ sauf Devise.Vous pouvez utiliser leDESCouASCdes mots-clés à trier par ordre décroissant (les valeurs de haut à bas, les valeurs NULL sont les dernières) ou par ordre croissant (les valeurs de bas à hautes, les valeurs de NULL sont les premières) pour chaque champ de tri. Si vous ne précisez pas d’ordre de tri pour un champ de tri, Workday trie automatiquement les rangées par ordre croissant.
- ROWS
- Est obligatoire. LaROWSLa clause définit le nombre précis de rangées (par rapport à la rangée actuelle) dans la partition en précisant un cadre de fenêtre. Vous définissez le cadre de la fenêtre en spécifiant des points de début et de fin à l’intérieur de la partition, appelés limites de la fenêtre. Le cadre de la fenêtre est l'ensemble des rangées d'entrée dans chaque partition, par rapport à la rangée actuelle, sur laquelle calculer l'expression d'agrégation (en dernier pour cette fonction). Le cadre de fenêtre peut inclure une, plusieurs rangées ou toutes les rangées de la partition.
- fenêtre_boundary
- Est obligatoire. Les limites de la fenêtre définissent les points de début et de fin du cadre de la fenêtre. Les limites de la fenêtre sont définies en fonction de la ligne actuelle.AFOLLOWINGla clause définit une limite de fenêtre qui est après la rangée actuelle (le nombre de rangées à inclure après la rangée actuelle). Workday utilise la rangée actuelle comme première rangée dans le cadre de la fenêtre (la limite inférieure). LaUNBOUNDEDle mot-clé inclut toutes les rangées dans la direction indiquée.