Oraz w przypadku „przesunięcia”:
Wybierz * z nazwy tabeli limit rownika przesunięcia „wiersz do pomijania”;Prosta klauzula limitu
Przechodząc do przykładów omawianego tematu. Rozważ stół o nazwie „naczynia”. Zawartość tabeli do 3 wierszy od samego początku ma być wyświetlana jako wyjście. I ten wybór odbywa się poprzez sortowanie danych w wierszach zgodnie z kolumną identyfikacyjną. „Limit” to słowo kluczowe używane do kontrolowania widoku utworzonego dla użytkownika w tabeli. Po pierwsze, wyświetlimy całą zawartość tabeli „naczynia” za pomocą polecenia Select
>> Wybierz * z potraw;Teraz zastosujemy zapytanie, aby wyświetlić wiersze do 3r & D ID.
>> Wybierz * Z kolejności naczyń według ID Limit 3;Za pomocą snapy możesz zobaczyć wyjście, w którym ostatnie dwa linie są odejmowane z powodu ograniczenia limitu stosowanego do tabeli.
Ogranicz klauzulę z klauzulą przesunięcia
Drugi przykład obejmuje użycie „przesunięcia” wraz z słowem kluczowym „limitu”. Ta klauzula przeskakuje/pomija wiersze numeru przesunięcia „n. Różnica między limitem a klauzulą przesunięcia polega na tym, że limit liczy liczbę do góry, do której chcemy wyświetlać dane, podczas gdy przesunięcie usuwa ten konkretny wiersz lub wiersze z tabeli, podając numer przesunięcia w poleceniu. Teraz zastosujemy oba klauzule do zapytania, więc otrzymamy pożądane wyjście.
>> Wybierz * Z kolejności naczyń według ID Limit 3 Offset 1;Powyższe polecenie pokazuje, że używany jest limit „3”, co oznacza, że wynikowa tabela będzie zawierała tylko 3 wiersze w tabeli, a przesunięcie „1” oznacza, że pierwszy wiersz zostanie odliczony od wyjścia. Stąd od 5, wyświetlane są tylko trzy wiersze z powodu limitu i przesunięcia.
Użycie klauzuli limitu z klauzulą zamówienia
Oprócz limitu możemy również użyć klauzuli zamówienia, aby wyświetlić dane tabeli. To zadziała, aby wszystkie treści zostały ułożone w kolejności określonej w zapytaniu. Wówczas część limitu zostanie uznana za wykonaną. Spójrzmy.
>> Wybierz * Z kolejności naczyń według typu DESC limit 4;To zapytanie pokazuje, że wynik jest najpierw ułożony po określonej kolumnie „Typ”. Tak więc, gdy 5 wierszy zostanie ułożone naprzeciwko kolejności alfabetycznej „Typ”, wówczas wyświetlane są pierwsze 4 wiersze.
Limit jako NULL
Jeśli określamy klauzulę „limitu” jako null, nie stosuje ona żadnej zmiany w tabeli. Tutaj wyświetliśmy tylko kolumnę „id”, aby sprawdzić skuteczność klauzuli „limit”.
>> Wybierz identyfikator z naczyń ogranicz NULL;Relacje… przyciągaj pierwsze
Ten przykład jest użycie „więzi” w klauzuli limit. Pomaga to uzyskać wszystkie dane, które są nawet używane wielokrotnie w dowolnej kolumnie tabeli. W tym konkretnym celu utworzymy najpierw nową tabelę, która ma pojedynczą kolumnę ID
>> Utwórz tabelę TBL1 (IN INT)Następnie wstaw do niego wartości.
>> Wstaw do wartości TBL1 (1), (5), (4), (6);Normalnie, gdy wprowadzamy wszystkie kolumny w momencie tworzenia tabeli, ale tutaj w przypadku liczb losowych. Utworzono kolumnę o nazwie „Numery”. Ta funkcja jest wbudowaną funkcją do generowania liczb losowych i każdej liczby kolumny identyfikatora. W tym celu używamy konkretnego stwierdzenia „alter”. Który doda kolumnę w tabeli, jak pokazano poniżej na zdjęciu.
>> Zmień tabelę Tbl1 Dodaj numery kolumn numeryczne domyślne ();Podobnie dodaliśmy więcej wierszy do tabeli. Wynikowy tabela jest następująca.
Teraz w tym tabeli zastosujemy klauzulę „Ties” z czynnikiem „Fetch-First”.
Jeśli pobieramy pierwsze rzędy tabeli, zwykle zdarza się, że postgreSQL zatrzymuje się na stałych numerach wierszy, gdy pojawią się te same liczby. Aby przezwyciężyć problem, oprócz „więzi” klauzula „Order według” jest również potrzebna, ponieważ bez tego wynik będzie dość losowy. Teraz zastosuj ten warunek na stole za pomocą zapytania.
Część „Fetch Pierwsza” otrzyma wszystkie rekordy ułożone w kolejność rosnącą według kolumny identyfikacyjnej. Zgodnie z poleceniem zostanie wybrane pierwsze 5 wierszy.
Wyrównanie więzi
Rozważ inną tabelę o nazwie „Technologia”. Tutaj jesteśmy zainteresowani zastosowaniem fetch_first, więzi i klauzul offsetowych w jednym poleceniu. Te trzy połączyły się i nie obiecały zwrócić dokładnie tej samej liczby wierszy określonych w zapytaniu.
>> Wybierz * z technologii;Tutaj chcemy określić 2 wiersze do pobierania z przesunięciem 3. Najpierw wszystkie dane są zorganizowane w kolejności malejącej, wówczas pierwsze trzy rzędy są usuwane; stąd otrzymujemy dwa ostatnie rzędne uporządkowane przez kolumnę modelu tabeli. Prosta składnia to:
>> Wybierz * Z kolejności nazwy tabeli według nazwy kolumny DESC Fetch Pierwsze (n) wiersze z przesunięciem powiązań (n);Limit z substancją
Jest to przykład ograniczenia liczby wierszy za pomocą podkładu do tabeli o nazwie pracownika. Możesz zastosować wszystkie polecenia do jednej tabeli. Ale aby wyjaśnić różne ograniczenia, musimy mieć różnorodność w tworzeniu tabeli, która nie jest jeszcze dostępna na jednej tabeli. Tak więc tabela pracowników ma następujące atrybuty.
>> Wybierz * od pracowników;Jedną rzeczą, o której należy pamiętać, jest użycie klauzuli kolejności tylko z klauzulą więzi, gdy się nawzajem pasują; W przeciwnym razie musisz użyć podkładu, jeśli chcesz określone wiersze z inną kolumną w tabeli.
>> Wybierz * z (wybierz * z zamówienia pracownika według City Desc Fetch z pierwszych 4 rzędów z więzi) jako Zamówienie UPQ według City Desc, FnamePo pierwsze, część zastępcza jest rozwiązywana.
Wniosek
„PostgreSQL Limit Rows” to rozwiązanie, aby ukryć niektóre dane przed użytkownikiem z niektórych określonych powodów. Używając „przesunięcia”, „klauzuli zamów” i „więzi” z koncepcją pobierania, aby zmniejszyć niejednoznaczność połączenia wszystkich w jednym stwierdzeniu. Mam nadzieję, że ta treść pomoże ci w obsłudze tabel z klauzulą limitu.