Autor | Zpráva | ||
---|---|---|---|
opicak Profil |
Dobrý den,
mám dvě tabulky tymy a zapasy. tymy | id | nazev | | int | varchar | zapasy | id | domaci | hoste | g1 | g2 | | všechny sloupce jsou typu integer | //ve sloupcích domaci a hoste jsou uložena ID z tabulky tymy Potřeboval bych vypsat zápasy, kde místo domaci a hoste budou názvy týmu z tabulky tymy. Zkoušel jsem hledat zde a na internetu, ale vůbec nevím pod jakým slovem hledat tento problém, ani jsem nevěděl jaký dát název vlákna. Doufám, že se tu najde někdo, kdo mi pomůže. Možná bude chyba na mé straně, se špatným rozvržením databáze. Předem díky za odpovědi a rady. edit: Zapomněl jsem dodat, že jsem se zamozřejmě pokoušel vytvořit nějaký kód, ale bez úspěchu. S sql moc nepracuji, většinou jen pro vybrání nějaké tabulky. Proto jsou zkoušel toto udělat v php, ale myslím si, že je lepší to provést v sql, kdyžtak mě opravte, jestli se mýlím. $dotaz = mysql_query("SELECT id,nazev FROM tymy"); $tymy = array(); for($i=0;$z=mysql_fetch_array($dotaz);$i++){ $tymy[$z[0]]=$z[1]; } $dotaz = mysql_query(" SELECT id_domaci domaci,id_hoste hoste FROM zapasy z "); while($z = mysql_fetch_array($dotaz)){ echo "{$tymy[$z["domaci"]]} {$tymy[$z["hoste"]]}<br>"; } Zkusil jsem vytvořit tento příkaz: SELECT z.id id_zapasu, (SELECT t.nazev FROM tymy t JOIN zapasy z ON z.id_domaci=t.id WHERE z.id=id_zapasu) domaci, (SELECT t.nazev FROM tymy t JOIN zapasy z ON z.id_hoste=t.id WHERE z.id=id_zapasu) hoste FROM zapasy z |
||
pcmanik Profil |
#2 · Zasláno: 10. 3. 2013, 23:07:10
opicak:
SELECT z.id, t1.nazev AS domaci, t2.nazev AS hoste JOIN tymy t1 ON t1.id = z.domaci JOIN tymy t2 ON t2.id = z.hoste FROM zapasy z |
||
opicak Profil |
Díky, SQL tolik neumím, jak jsem psal, jen opravdu ty základy a nenapadlo mě připojit dvakrát stejnou tabulku.
|
||
Časová prodleva: 11 let
|
0