Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] pomysł na zapytanie
Forum PHP.pl > Forum > Przedszkole
innter
bardzo uproszczona wersja tabeli:
http://sqlfiddle.com/#!9/56f528

chciałbym pobrać wszystkie książki dla library='library_1' i dodatkowo wszystkie książki dla library_2, ale tylko wtedy, gdy library_1 ich nie posiada (w przykładzie chodzi o book_5)
Nie wiem czy dobrym rozwiazaniem jest uzycie uniona bo mam kilka joinów/left joinów
Obecnie robię 2 selecty i dalej dane obrabiam w php. Zastanawiam się nad optymalnym rozwiazaniem tego po stronie bazy
szczemp
  1. SELECT book_id FROM test WHERE library = 'library_1' OR library = 'library_2' GROUP BY book_id
innter
jezeli zapuszczę coś takiego
http://sqlfiddle.com/#!9/56f528/10
to book_1 pobrało mi z library_0 bo jest wyzej w tabeli, a to jest dla mnie dosyc istotne
wtedy chciałbym, żeby wynik wygladał tak:
http://sqlfiddle.com/#!9/56f528/15
mmmmmmm
select t1.*, t2.* from test t1 LEFT JOIN test t2 ON t1.book_id=t2.book_id AND t2.library='library_1'
where t1.library='library_1' or (t1.library='library_2' and t2.book_id is null)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.