[MYSQL] Spojení dvou tabulek s více id

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod njosef 18. 3. 2012 20:57

Zdravím, mám tabulku, kde vystupují v jednom záznamu několik uživatelů, a potýkám se s problémem jak je vypsat :(
variantu pro jedno id znám, ale pro více nemohu vzpomenout ani najít... Díky za nakopnutí ;)
Kód: Vybrat vše
SELECT CONCAT(uzivatel.prijmeni,' ',uzivatel.jmeno) as kamerama, adresa, od, do, kontaktni_osoba, kontakt_telefon, typ_akce, poznamka
  FROM kalendar 
  LEFT JOIN uzivatel ON uzivatel.id=kalendar.kamera
njosef
Junior

Odeslat příspěvekod Wikan 18. 3. 2012 20:59

Četl jsem třikrát, ale stejně nechápu, co vlastně chceš.
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod Xenik 18. 3. 2012 21:03

Jak vypadají tabulky kalendar a uzivatel?
Xenik
Junior

Odeslat příspěvekod njosef 18. 3. 2012 21:10

Už se mi to podařilo, blesk z čistého nebe :-(
Kód: Vybrat vše
SELECT CONCAT(uzivatel1.prijmeni,' ',uzivatel1.jmeno) as kamera,CONCAT(uzivatel2.prijmeni,' ',uzivatel2.jmeno) as kamera2, adresa, od, do, kontaktni_osoba, kontakt_telefon, typ_akce, poznamka
  FROM kalendar
  LEFT JOIN uzivatel as uzivatel1 ON uzivatel1.id=kalendar.kamera
  LEFT JOIN uzivatel as uzivatel2 ON uzivatel2.id=kalendar.kamera2

toto je reseni, kdy mate vice ID z jine tabulky v jednom zapisu v dalsi tabulce. Treba uzivatele kteri pracuji na stejnem projektu v ruznych pozicich ( tabulka s uzivately[id_uzivatele,jmeno, prijmeni, pozice ....] a tabulka s projekty[id_projektu, dozorci_stavby, mistr, kalkulant, lokace ...])
njosef
Junior

Odeslat příspěvekod Vebloud 19. 3. 2012 10:54

Tak to se dělá jinak. Na to by mělo být tři tabulky, kde v té třetí je ID uživatele, ID Kalendáře a jako třetí sloupec označení pozice. Pak tam mlžeš mít pozice kolik chceš a na každý projekt jiný počet.
Žít a nechat žít, ty máš svůj názor, já mám svůj názor, já ti nebudu nutit svůj, nemusím souhlasit s tvým, ale udělám vše, abys ho mohl svobodně vyjádřit.
Vebloud
VIP uživatel
Uživatelský avatar

Odeslat příspěvekod njosef 19. 3. 2012 13:41

samozřejmě to je optimální varianta. U mne se budou vyskytovat na pevno 3lidé tak jsem to řešil tímto stylem. Pokud by se jednalo o větší aplikaci s variací pracovníků je tebou navrhované řešení vhodné. Díky!
njosef
Junior

Odeslat příspěvekod Vebloud 19. 3. 2012 16:09

Kdykoliv slyším napevno, musím se smát. Ještě jsem totiž neviděl situaci, která by se nemohla změnit...
Žít a nechat žít, ty máš svůj názor, já mám svůj názor, já ti nebudu nutit svůj, nemusím souhlasit s tvým, ale udělám vše, abys ho mohl svobodně vyjádřit.
Vebloud
VIP uživatel
Uživatelský avatar

Odeslat příspěvekod njosef 19. 3. 2012 16:17

smrt ? finito :-)
njosef
Junior


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků