Mit der SQL -Lead -Funktion können Sie auf die nächste Zeile aus der aktuellen Zeile bei einem bestimmten Offset zugreifen. Kurz gesagt, mit der Lead -Funktion können Sie über die aktuelle Zeile zugreifen. Durch Angeben des Offsetwerts können Sie auf die nächsten 1, 2, 3 usw. zugreifen., Zeilen aus dem aktuellen.
Es ist das Gegenteil der Funktion von LAG (), mit der Sie auf frühere Zeilen zugreifen können.
SQL Lead ()
Die Funktionssyntax ist wie gezeigt:
Lead (value_expression, offset [, Standard])Das Folgende sind die unterstützten Argumente:
Beispiel 1
Angenommen, wir haben eine Tabelle mit Mitarbeiterinformationen wie gezeigt:
Um auf den nächsten Mitarbeiternamen zuzugreifen, können wir wie gezeigt eine Abfrage ausführen:
Wählen Sie ID, full_name, Lead (full_name) über (Der obige Code partitioniert die Daten basierend auf der Kategorie. Anschließend wird der nächste Name in der Partition mit der Lead -Funktion abgerufen.
Die resultierende Ausgabe ist wie gezeigt:
Beispiel 2
Wenn in einer bestimmten Spalte (außerhalb der Grenze) keine nächste Zeile vorhanden ist, setzt die Funktion den Wert auf NULL, wie oben gezeigt.
Um einen Standardwert für jeden Außenscope-Zugriff festzulegen, können wir Folgendes tun:
Wählen Sie ID, full_name, Lead (full_name, 1, 'n/a') über (Wir setzen den Standardwert auf 'n/a'. Dies sollte jeden in der Ausgabe dargestellten Wert außerhalb des gebundenen Werts ersetzen:
NOTIZ: Das Einstellen des Offsets auf 1 ähnelt dem Wert eines Werts.
Beispiel 3
Angenommen, Sie möchten auf die nächsten beiden Zeilen aus der aktuellen Zeile zugreifen? Wir können dies tun, indem wir den Offset -Wert auf 2 festlegen.
Eine Beispielabfrage ist unten dargestellt:
Wählen Sie ID, full_name, Lead (full_name, 2, 'n/a') über (Diese Abfrage gibt die nächsten beiden Zeilen in jeder Partition zurück, wie unten gezeigt: