Autor Zpráva
Honza Toman
Profil *
Zdravím, již se chvíli trápím s LEFT JOINem u tabulky (MySQL)...

Mám dejme tomu tabulku user, kde mám user_id, user_adress1 a user_adress2
Pak druhou tabulku adress, kde jsou sloupce address_id a adress_city

V tabulce user mám například: "1", "2", "35"

Nyní potřebuji vytáhnout z tabulek data..
Pokud použiji
SELECT a.user_id, b.adress_city FROM users as a LEFT JOIN adress as b ON a.user_adress1 = b.address_id OR a.user_adress2 = b.address_id


dostanu pole, kde mám user_id 2x, tedy třeba
array(
 array(user_id = 1, adress_city = praha),
 array(user_id = 1, adress_city = brno)
);


Potřeboval bych však dostat pouze user_id = 1, adress = array(praha, brno).

Již mě napadlo použít group_concat, ale to bych nedostal pole, a musel bych si to explodnout dle separátoru...

Ví někdo jak to vyřešit?

Děkuji za každý tip.
DJ Miky
Profil
Toto se tu řešilo zrovna dneska, můžeš tabulku připojit dvakrát pod jiným aliasem. Každé adrese bude odpovídat jeden index v poli vráceném funkcemi mysql_fetch_*().

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0