Funkcja wiodącego SQL umożliwia dostęp do następnego wiersza z bieżącego wiersza przy określonym przesunięciu. Krótko mówiąc, funkcja wiodąca umożliwia dostęp do następnego wiersza z bieżącego. Określając wartość przesunięcia, możesz uzyskać dostęp do następnych 1, 2, 3 itd., rzędy z bieżącego.
Jest to przeciwieństwo funkcji LAG (), która pozwala uzyskać dostęp do poprzednich wierszy.
SQL Lead ()
Składnia funkcji jest jak pokazana:
Lead (value_Expression, offset [, domyślnie])Poniżej znajdują się obsługiwane argumenty:
Przykład 1
Załóżmy, że mamy tabelę zawierającą informacje o pracownikach, jak pokazano:
Aby uzyskać dostęp do następnej nazwy pracownika, możemy uruchomić zapytanie, jak pokazano:
Wybierz identyfikator, Full_name, Lead (Full_name) Over (Powyższy kod podzieli dane na podstawie kategorii. Następnie przyniesie następną nazwę w partycji za pomocą funkcji wiodących.
Powstałe wyjście jest jak pokazano:
Przykład 2
Jeśli nie ma następnego wiersza w określonej kolumnie (poza granicą), funkcja ustawi wartość na null, jak pokazano powyżej.
Aby ustawić wartość domyślną dla każdego dostępu spoza rezultatu, możemy wykonać następujące czynności:
Wybierz identyfikator, Full_name, Lead (Full_name, 1, „N/a”)Ustawiamy wartość domyślną na „nie dotyczy”. Powinno to zastąpić dowolną wartość poza nieokreśloną, jak pokazano na wyjściu:
NOTATKA: Ustawienie przesunięcia na 1 jest podobne do nie określania żadnej wartości.
Przykład 3
Załóżmy, że chcesz uzyskać dostęp do następnych dwóch rzędów z bieżącego wiersza? Możemy to zrobić, ustawiając wartość przesunięcia na 2.
Przykładowe zapytanie ilustruje poniżej:
Wybierz identyfikator, Full_name, Lead (Full_name, 2, „N/a”)To zapytanie zwróci kolejne dwa wiersze w każdej partycji, jak pokazano poniżej: