La fonction de décalage dans SQL vous permet de récupérer la ligne précédente à un décalage spécifique de la ligne actuelle. Cela signifie que vous pouvez accéder à la ligne précédente à partir de la ligne actuelle. Vous pouvez également spécifier un décalage particulier pour accéder au deuxième, troisième, etc.
Discutons de la façon dont nous pouvons utiliser la fonction LAG dans SQL.
Syntaxe de fonction
La syntaxe de fonction est comme indiqué:
LAG (scalar_expression [, offset] [, par défaut])Les paramètres de fonction sont exprimés comme indiqué ci-dessous:
Exemple 1
Supposons que nous ayons un tableau contenant des données des employés comme indiqué:
Pour obtenir les noms d'employés actuels et précédents, nous pouvons exécuter la requête comme indiqué:
Sélectionnez Full_name, LAG (Full_name)Le code ci-dessus doit renvoyer les noms des employés actuels et précédents dans chaque partition.
La sortie est comme indiqué:
Exemple 2
S'il n'y a pas de ligne précédente dans la partition, la fonction renverra null. Si nous souhaitons définir une valeur pour les lignes inexistantes, nous pouvons définir le paramètre par défaut comme indiqué:
Sélectionnez Full_name, LAG (Full_name, 1, «Personne disparue»)Cela devrait remplacer les valeurs nuls par 'personne disparue.'La sortie sera présentée ci-dessous:
Exemple 3
Supposons que nous voulons accéder à deux lignes de la ligne actuelle? Nous pouvons le faire en spécifiant le décalage comme indiqué:
Sélectionnez Full_name, LAG (Full_name, 2, 'N / A')La requête ci-dessus devrait revenir à deux lignes et sélectionner sa valeur.
Sortir:
Conclusion
Dans cet article, vous avez appris à utiliser la fonction SQL LAG () pour accéder à la ligne précédente à partir de la ligne actuelle.
Merci d'avoir lu!!