[SQL] Převod více id v jedné tabulce na hodnoty z jiné

C++, C#, Visual Basic, Delphi, Perl a ostatní

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

Odeslat příspěvekod iFR3NK 22. 9. 2010 23:10

Dobrý den,
mám malý problém, možná jsem přepracovaný a pouze nemohu přijít na řešení takovéhoto jistě triviálního úkolu.

Mám tabulky:
  • users (id, nick)
  • messages (id,id_sender,id_recipient, text)

Rád bych udělal výpis úplně stejný jako by byl při provedení příkazu
Kód: Vybrat vše
SELECT * FROM messages

* po jeho provedení se vypíší řádky se sloupci jako v tabulce messages (každý jistě pochopí z příkazu ;-)

ALE..

rád bych namísto id_sender a id_recipient měl ve výpisu nicky z tabulky users.

Úloha by se tedy dala formulovat např. následovně:
- "Vypište kdo komu poslal jakou zprávu pomocí jednoho dotazu s tím, že budou vypsány všechny zprávy".

Zkoušel jsem toho opravdu dost a stále se mi nedařilo tento problém vyřešit. Děkuji za jakoukoli radu.
iFR3NK
Junior
Uživatelský avatar

Odeslat příspěvekod Nargon 22. 9. 2010 23:25

Ja bych zkusil tohle:
Kód: Vybrat vše
SELECT id, u1.nick, u2.nick, text FROM (messages JOIN users u1 ON messages.id_sender = u1.id) JOIN users u2 ON messages.id_recipient = u2.id

Ale za nic nerusim SQL zrovna casto nepouzivam.
Desktop: Ryzen 7 1800X (3.95GHz, 1.35V), Asus Crosshair VI Hero, 16GB DDR4 Ram (3200MHz), 128GB SSD + 3TB HDD, Nvidia GTX 1080
Notebook: Asus UL50VT 15.6" (SU7300@1.7GHz, 4GB ram, 500GB HDD, Intel GMA 4500MHD + nVidia G210M, dlouha vydrz cca 7+ hod)
Nargon
Moderátor

Odeslat příspěvekod iFR3NK 22. 9. 2010 23:32

Děkuji moc, tohle je přesně, co jsem potřeboval ;) :tleskani
iFR3NK
Junior
Uživatelský avatar

Odeslat příspěvekod Vebloud 24. 9. 2010 15:23

Každopádně bych ti doporučil podívat se na nějáký článek o "spojování" tabulek v dotazech. Bude se ti to hodit častěji.
Ží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
Ex-moderátor
Uživatelský avatar


Kdo je online

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