![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 1 Dołączył: 2.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam taką bazę.
TAB: ciastka id nazwa TAB: dzieci id imie TAB: Dzieci-Ciastka id_ciastka id_dziecka Baza opisuje które dziecko spróbowało które ciastko. Jak chcę wyświetlić ciastka które zostały spróbowane przez dziecko o id=2 to jest tak:
To działa ale ja potrzebuje w drugą stronę. Których ciastek jeszcze nie próbowało dziecko o id=2 Bardzo proszę o pomoc. Ten post edytował billy235 12.12.2011, 19:48:16 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 18 Dołączył: 4.09.2010 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
generalnie:
Kod select * from t1 [left | right] outer join t2 on t1.id=t2.id where [t1 | t2].id is null; reszta w manualu mysql http://dev.mysql.com/doc/refman/5.0/en/join.html Ten post edytował uupah5 12.12.2011, 14:55:42 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 1 Dołączył: 2.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Próbuje na wiele sposobów ale żaden nie działa.
Zapominacie przede wszystkim że to musi być dla konkretnego dziecka o np id =2 ----------------------------------------------------- Wydaje mi się że znalazłem odpowiedź, ale z pomocą podzapytania. Z pomocą złączeń zewnętrznych chyba się nie dało.
zatem podzapytanie
Wybiera nam id ciastka które próbowało dziecko o id=2. Wypisujemy wszystkie ciastka i jeśli nie były próbowane przez to dziecko to wyświetlamy. Zostawiam dla Potomnych chyba ze ktoś wymyśli lepsze rozwiązanie. Ten post edytował billy235 12.12.2011, 19:46:05 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 18 Dołączył: 4.09.2010 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
Próbuje na wiele sposobów ale żaden nie działa. Zapominacie przede wszystkim że to musi być dla konkretnego dziecka o np id =2 join czy to outer czy nie - to dalej standardowy select, czyli możesz użyć zarówno where jak i having także nie trzeba kombinować z subquery. jeśli nie zależy Ci na wydajności a danych jest mało - zostań przy swoim rozwiązaniu. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.08.2025 - 04:37 |