![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 10.08.2016 Ostrzeżenie: (0%) ![]() ![]() |
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 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 149 Pomógł: 9 Dołączył: 9.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 10.08.2016 Ostrzeżenie: (0%) ![]() ![]() |
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 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
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) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 03:54 |