Istnieją również inne typy danych, jeśli tworzysz tabelę za pomocą PGADMIN. W tym artykule dowiesz się, jak możesz znaleźć długość tablicy w PostgreSQL w systemie Windows 10 za pomocą kilku przykładów.
Składnia
Składnia do znalezienia długości tablicy to:
# array_length (kolumn_name, int)
W powyższej składni „array_length” zwraca długość pożądanej „nazwy_polution”, która jest napisana w pierwszej kolejności. „Int” na drugim miejscu wspomina o wymiarach tablicy.
Array_length w PostgreSQL
Aby znaleźć długość tablicy, musisz utworzyć tabelę w PostgreSQL albo za pomocą narzędzia PGADMIN lub SQL Shell. Stworzyłem tabelę o nazwie „Groceries” składająca się z trzech kolumn. Składnia do tworzenia tabeli to:
# Utwórz spożycie spożywcze („ID” Noth Null, „Osoba” Znak zmieniający się (100), „elementy” zmieniające się [255], klucz podstawowy („id”));
W powyższym zapytaniu, jak sama nazwa wskazuje, „Utwórz tabelę” tworzy tabelę o nazwie „artykułów spożywczych”, która składa się z trzech różnych kolumn zwanych „id”, „osobą” i „elementy”. Przy każdej nazwie kolumny ich typy danych są zadeklarowane, „elementy” są zadeklarowane jako typ tablicy za pomocą [], co wskazuje, że chcemy typu danych jako tablicy. Tutaj „id” jest określony jako klucz podstawowy w tabeli. Po utworzeniu tabeli „artykuły spożywcze” dane dla każdej kolumny są wstawiane zgodnie z ich odpowiednimi typami danych. Stół „artykułów spożywczych” wygląda teraz tak
W kolumnie „id” Każda osoba jest przypisywana liczbą i nazwą w kolumnie „Osoba”. W kolumnie „elementy” wymieniane są te elementy, które każda osoba kupiła. Wszystkie elementy są jednowymiarowe, z wyjątkiem tego, w którym id = 7, jest wyrażany jako tablica wielowymiarowa.
Teraz, gdy stół jest tworzony, uruchommy kilka przykładów, aby znaleźć długość tablicy w tabeli „artykuły spożywcze”.
# Wybierz „ID”, „osobę”, „Items”, array_length („Items”, 1) z „artykułów spożywczych”;
W powyższym zapytaniu instrukcja „Wybierz” wybiera wszystkie wspomniane kolumny, w tym „id”, „osoba”, „elementy”. Funkcja „array_length”, która przyjmuje dwa parametry „elementy” i „1” oznacza, że chce zmierzyć długość kolumny „elementy”, a „1” opisuje wymiar mierzony tablicę. Powyższe zapytanie pokazuje następujące dane wyjściowe:
Powyższe wyjście pokazuje długość tablicy każdego elementu, którą kupiła osoba. Jak widzimy, że dane nie są w określonej kolejności, długość 3 elementów jest wyświetlana najpierw, a 1 element jest wyświetlany na końcu, ponieważ instrukcja wyboru zwraca kolumnę w nieposłuszny sposób.
Array_length za pomocą kolejności w PostgreSQL
W poprzednim przykładzie widzieliśmy, że długość tablicy w wyniku nie została sortowana. Możemy łatwo sortować kolumnę za pomocą klauzuli „Zakaz według” w kolejności malejącej lub rosnącej, uruchamiając następujące zapytanie:
# Wybierz „id”, „osobę”, „i elementy”, array_length („Items”, 1) z „Groceries” Zamówienie według array_length („Items”, 1) DESC;
W powyższym zapytaniu klauzula „Order by” posortowała wiersze w kolejności malejącej, jak wyświetlono w poniższym wyjściu:
Można wyraźnie zobaczyć, że klauzula „zamówienia według” posortowała kolumnę „elementu” w kolejności malejącej, jak wspomnieliśmy w zapytaniu. Podobnie możemy również sortować długość kolumny „elementy” w kolejności rosnącej, ale tym razem będę używać aliasu dla kolumny „array_length”, aby nie musiałem go powtarzać z klauzulą „rzędu”. Zapytanie do sortowania kolumny w kolejności rosnącej jest:
# Wybierz „id”, „osobę”, „i elementy”, array_length („Items”, 1) len_ascending z kolejności „artykułów” przez len_ascending ASC;
W powyższym zapytaniu zadeklarowałem alias jako „len_ascinging”, a kolumna jest sortowana w kolejności rosnącej, co daje poniższe wyjście:
W powyższym wyjściu użyte alias można zobaczyć, a kolumna jest sortowana w kolejności rosnącej za pomocą klauzuli „rzędu” i funkcji „ASC” w zapytaniu.
Zwracanie maksymalnej długości macierzy w PostgreSQL
Jeśli chcesz tylko maksymalną długość tablicy w kolumnie, możesz ograniczyć wynik za pomocą klauzuli „Limit” w zapytaniu z klauzulą „Zakaz według”. Klauzula „limitu” zwróci tylko liczbę wspomnianych wierszy. Zapytanie o zwrócenie tylko maksymalnej długości tablicy w PostgreSQL jest:
# Wybierz „ID”, „osobę”, „Items”, array_length („Items”, 1) z zamówienia „Groceries” według Array_Length („Items”, 1) DESC LIMIT 1;
W tym zapytaniu klauzula „Zakon według” i „Limit” zwraca maksymalną długość tablicy w kolumnie „Elementy”. Funkcja „Zakon według” i „DESC” zwraca najwyższą wartość z kolumny „Elementy”, a klauzula „limitu” zwraca tylko 1 wiersz, jak wspomniano w zapytaniu, a wynik jest wyświetlany jako:
Osobą, która kupiła maksymalną liczbę przedmiotów, to „Catherine” o długości tablicy 6.
Możesz także znaleźć osobę z minimalnymi elementami spożywczymi za pomocą funkcji „ASC” zamiast funkcji „DESC”, a także może ograniczyć wiersze do więcej niż 1.
Array_length za pomocą klauzuli o
Jeśli chcesz znaleźć długość tablicy konkretnej osoby, klauzula „gdzie” pomoże Ci znaleźć ten rekord. Klauzula „gdzie” filtruje wiersze zgodnie z ustawionym warunkiem. Poniżej znajduje się zapytanie „array_length” za pomocą klauzuli „gdzie”:
# Wybierz „ID”, „osobę”, „Items”, array_length („Items”, 1) z „artykułów spożywczych” gdzie „osoba” = „barry”;
W powyższym zapytaniu określiłem warunek, który znajduje długość tablicy z tabeli „artykuły spożywcze”, w których nazwa danej osoby to Barry, co daje następujący wynik:
Wyjście pokazuje, że Barry kupił dwa elementy, które pojawiły się w ostatniej kolumnie „Array_length”.
Wniosek
Omówiliśmy, w jaki sposób możemy znaleźć długość tablicy w PostgreSQL, wykorzystując różne przykłady. PostgreSQL sprawia, że jest mniej skomplikowane w użyciu tablic w zapytaniu i znajdowaniu długości kolumny za pomocą tylko prostej składni array_length (kolumn_name, int).
„Array_length” w tej składni zwraca długość tablicy pierwszego argumentu i.mi., nazwa_polution i „int” informuje wymiar zmierzonej tablicy. Podsumowując, długość tablicy można łatwo mierzyć za pomocą różnych funkcji i klauzul.