Ten post zbada, jak korzystać z instrukcji Fetch w standardowym SQL. To instrukcja umożliwia ograniczenie liczby rekordów zwróconych przez określone zapytanie.
Jestem pewien, że znasz klauzulę limitu, która wykonuje podobną operację. Więc jaka jest różnica między limitem a pobieraniem?
Prosta odpowiedź jest taka, że nie ma dużej różnicy. Jednak klauzula limitu nie jest obsługiwana w standardowym SQL. Został przyjęty z klauzuli Fetch przez dostawców baz danych. Dlatego jest szeroko stosowany przez prawie wszystkie główne silniki bazy danych SQL.
W niektórych rzadkich przypadkach możesz napotkać instancję, w której dostawca bazy danych nie obsługuje klauzuli limitu. Lub używasz standardowego SQL w swoim środowisku.
Składnia klauzuli
Poniżej pokazuje składnię klauzuli Fetch:
Offset offset_rows wiersz | Rzędy
Fetch [fetch_rows] wiersz | Tylko wiersze
Przykład
Poniższy przykład pokazuje, jak użyć klauzuli Fetch Fetch w standardowym SQL:
Utwórz bazę danych Zero_day;
Użyj zero_day;
Utwórz rekordy tabeli (
Id int not null auto_increment klucz podstawowy,
raport_name varchar (255) nie null,
raport_date Data nie null,
raport_author varchar (100) domyślny „anonimowy”,
Nasilenie, nie null,
Sprawdź (nasilenie> 0)
);
Wstaw do rekordów (nazwa_powiedz, raport_date, nasilenie)
Wartości („DESC-100”, „2022-01-20”, 6),
(„DESC-200”, „2022-01-21”, 5),
(„DESC-300”, „2022-01-22”, 10),
(„DESC-400”, „2022-01-23”, 8),
(„DESC-500”, „2022-01-24”, 4);
Możemy użyć instrukcji SELECT i klauzuli Fetch Fetch, jak pokazano poniżej:
Wybierz * Z rekordów Offset 0 Rzury Pobierają kolejne 3 wiersze;
Poprzednie zapytanie powinno pobrać pierwsze trzy rzędy z określonej tabeli.
Wniosek
W tym poście omówiliśmy podstawy użycia instrukcji Fetch offset w standardowym SQL. Ponadto podaliśmy przykłady podkreślenia składni klauzuli.