Stworzyłem projekt zdalnej aplikacji na libpq dla PostrgreSQL . Zachowuje się dobrze, ale profilowałem ogólne działanie aplikacji. Dla każdego końcowego wyniku biznesowego, który produkuję, zdarza się, że nazywam coś w rodzaju klauzuli 40 wyboru (ponad tcpip).
Mam wspomnienia z SQL-Servera przypominające mi o zminimalizowaniu liczby interakcji między moją zdalną aplikacją a bazą danych. Po przeanalizowaniu moich selekcji myślę, że mógłbym zmniejszyć tę liczbę do 3 SELECTklauzul, używając sprzężeń. Ale nie pamiętam składni użycia wyniku SELECTw innym SELECT.
Na przykład:
SELECT * FROM individual
INNER JOIN publisher
ON individual.individual_id = publisher.individual_id
WHERE individual.individual_id = 'here I would like to use the results of a another select'
Ten drugi SELECTbyłby po prostu tego rodzaju:
SELECT identifier FROM another_table WHERE something='something'
Oto uproszczony układ tabel, kilkakrotnie odrzucany dla różnych typów item_ ... (3 zupełnie różne typy, stąd 3 zapytania SQL, jeśli są zoptymalizowane).
table passage
id_passage PK
business_field_passage bytea
table item
id_item PK
id_passage FK
business_field_item text
table item_detail
id_item_detail PK
id_item FK
business_field_item_detail text
image_content bytea
Istnieje kilka id_itemdla jednego id_passage.
Istnieje kilka id_item_detaildla jednego id_item.
Jak byś to napisał?
Jak nazywa się opis przekierowania jednego wyboru do drugiego (jeśli istnieje)?