PostgreSQL Subpquery

PostgreSQL Subpquery
PostgreSQL jest jednym z najsilniejszych i łatwych w użyciu narzędzi do zarządzania bazami danych. Zapewnia proste i intuicyjne zapytania, umożliwiające łatwe opanowanie i przywołanie instrukcji SQL.

W tym samouczku omówimy sposób korzystania z podziałów PostgreSQL. Zastępcze pozwalają tworzyć złożone zapytania SQL, które są mocno czytelne i łatwe w użyciu.

Co to jest podtrzymanie?

W PostgreSQL rozstańca odnosi się do zapytania w zapytaniu. Możesz powiązać podziały do ​​typowych zapytań, takie jak wybór, skąd, od posiadania i nie tylko.

Rozpłatę nazywa się również wewnętrznym zapytaniem.

Podstawowa składnia dla podziału PostgreSQL to:

Wybierz col1, col2 z TB1, gdzie Expr (wybierz col1, col2 z TB1);

W takim przypadku stwierdzenia wewnątrz nawiasu reprezentują rozdzielczość. Wykonują się przed wykonaniem zapytania głównego lub zewnętrznego.

Po zwróceniu wyniku, główne zapytanie przetwarza go i zwraca wyniki użytkownikowi.

W PostgreSQL kolejność według nie można użyć w podtrzymaniu.

Przykład PostgreSQL Subpquery

Zilustrujmy użycie podziału za pomocą klauzuli Where. Załóżmy, że mamy bazę danych krajów z kolumnami: nazwa, country_id i dwupolitowe reprezentacje.

Możemy użyć podziału, aby uzyskać kraje, w których identyfikator jest większy niż 800.

Przykładowe zapytanie znajduje się poniżej:

Wybierz nazwę, dwa_leta, country_id z kraju, w którym country_id in (select country_id, gdzie country_id> 800);

W powyższym przykładzie podtrzymanie filtruje kraje z identyfikatorem większym niż 800 i zwraca wynik do głównego zapytania.

Przykładowy wynik znajduje się poniżej:

Przykład 2

Załóżmy, że chcemy zdobyć kraje z identyfikatorem większym niż 800 i zacząć od litery U.

Możemy zawiązać zapytanie wewnątrz podziału jako:

Wybierz nazwę, dwa_leta, country_id z kraju, w którym country_id in (select country_id, gdzie country_id> 800 i dwa_letter, takie jak „u%”);

Powyższe zapytanie działa podobnie jak powyżej. Jednak sprawdza dwa warunki jednocześnie i zwraca wynik do zewnętrznego zapytania.

Przykład 3

Chociaż nie możemy użyć klauzuli kolejowej w podkomplicie PostgreSQL, możemy użyć grupy według zapytania, aby wykonać podobną funkcję.

Na przykład rozważ tabelę płatności w bazie danych Sakila. Możemy wykonać akcję jako:

Wybierz Payment_ID, kwota Z płatność tam, gdzie płatność_d W (Wybierz płatność_id Z Grupa płatności według płatności_dem Limit 5);

Powyższe zapytanie zwróci wyniki zgrupowane według identyfikatora płatności.

Przykład 4

Możemy również używać PostgreSQL z innymi stwierdzeniami. Na przykład możemy usunąć określone rekordy zwrócone z podziału.

Usuń z filmu, gdzie istnieje (wybierz film_dem z filmu Where Film_id> 100);
Wybierz * z limitu filmu 5;

W powyższym zapytaniu usuwamy film, w którym Film_id jest większy niż 100.

Dobrze jest upewnić się, że inne osoby korzystające z bazy danych nie odnieśli się do rekordów, które chcesz usunąć.

Punkty rozdzielcze

Należy pamiętać o niewiele punktów podczas pracy z podziałami PostgreSQL.

  1. Załącz podkwestki w nawiasach.
  2. Upewnij się, że podtrzymanie zwraca wartość, ponieważ zewnętrzne zapytanie będzie działać w wyniku rozdzielczości.
  3. Możesz używać podziałów z różnymi operatorami SQL, o ile nie zwracają wartości zerowej.

Zamknięcie

W tym przewodniku omówiliśmy, jak powiązać zapytania w PostgreSQL bez użycia osobnych zapytań.