Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] Zagwozdka
throw.pl
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 23.09.2009

Ostrzeżenie: (0%)
-----


Mam taki problem, być może jestem chwilowo zamroczony, ale nie mogę tego rozwiązać.

Mam dwie tabelki opisujące różne obiekty. Mam trzecią tabelkę opisującą czy zachodzi relacja pomiędzy obiektami.

tab1 { id, attr1, attr2 }
tab2 { id, attr3, attr4, attr5 }
tab3 { id, tab1id, tab2id }

Wyobraźmy sobie, że tab1 to lista organizacji.
Wyobraźmy sobie, że tab2 to lista ludzi.

Chciałbym dla danego człowieka (tab2.id) wyświetlić listę wszystkich organizacji, ale z informacją czy człowiek jest w organizacji czy nie. Jeżeli nie jest w organizacji, chciałbym aby zwróciło -1,0, NULL, a jeżeli jest to, żeby zwróciło np. TRUE.

Jednym słowem, wynik powinien być listą list {tab1.id, tab1.attr1, tab1.attr2, TRUE lub FALSE}. W ten sposób będę mógł wyświetlić dla każdego człowieka organizacje z informacją czy w nich jest czy nie.

Problem, że przy pustej tab2 (żaden człowiek nie jest w żadnej organizacji) zapytania z JOIN mi nie działają. Dla pustej tabeli tab2, powinno zwrócić całą tab1 z dodatkowym polem TRUE przy każdym wierszu.

Ktoś ma pomysł?(IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
throw.pl
post
Post #2





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 23.09.2009

Ostrzeżenie: (0%)
-----


Wielkie dzięki, za pomoc (IMG:style_emoticons/default/smile.gif) Trochę przerobiłem kod, bo w sumie struktura mojej bazy jest 5x bardziej skomplikowana;) i działa.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.09.2025 - 19:30