![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam 2 tabele
rodzaje jablek id | rodzaj 1 | zielone 2 | czerwone i drugą tabelę, która zawiera informacje, które jablka moga jeść użytkownicy ktore mogą jeść rodzaj| user| avaliable 1 | 1 | 1 2 | 1 | 1 3 | 2 | 1 no to łatwo wyczytać że user 1 moze jest zielone, user 2 moze jesc zielone, user 3 moze jesc czerwone, ale ja chce zrobic sobie listę które moze, a które nie, czyli wysylam id uzytkownika do bazy i tworze taki o to SQL:
i to mi pokazuje tylko ze user 3 moze jesc jablka czerwone, a chcialbym zeby pojawił się tez wiersz że nie moze jeść zielonych czyli coś w stylu: ar.rodzaj | mj.avaliable zielone | NULL czerwone | 1 domyslame sie ze to "where mj.user=3" tutaj psuje konstrukcje. jeszcze próbowałem coś takiego
ale to tez nie dziala jakies sugestie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Poczytaj o: LEFT JOIN, RIGHT JOIN, JOIN
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
To zapytanie dziala ok, ale jak już dodam where
No to niestety nie wyświetla nic, a powinien pokazac rodzaj | avaliable zielone | NULL czerowne | NULL Ten post edytował neo1986kk 28.09.2015, 18:00:20 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Patrzyłeś samego JOIN'a ?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
nadal bez zmian, chociaż w sumie rożnica polega na tym że przy LEFT JOIN bez tego WHERE to chociaż pokazywał wszystkie, a tak nie pokazuje nic Ten post edytował neo1986kk 28.09.2015, 18:14:27 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Masz dwa JOIN, teraz widzę że w obu przypadkach zmieniłeś na samo JOIN.
https://dev.mysql.com/doc/refman/5.0/en/join.html |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Kombinowałem już na wszystkie sposoby, pierwsze JOIN zamieniałem na LEFT JOIN i odwrotnie i nadal nie moge osiągnąć wyniku, pewnie rozbije to na 2 zapytania...
w ten sposób zadziałało Ten post edytował neo1986kk 28.09.2015, 18:35:01 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Sprawdz takie zapytanie. Joinujesz userow, ale nie piszesz po jakich polach masz połączyć te tabele, a to zdaje się tworzy iloczyn kartezjański z tych tabel? Ten post edytował kapslokk 28.09.2015, 18:49:07 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Też działa prawidłowo
Sorry, dziala o wiele lepiej, rzeczywiście wcześniej podstawiało obojętne którego usera Ten post edytował neo1986kk 28.09.2015, 21:01:19 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 22:57 |