Autor | Zpráva | ||
---|---|---|---|
zaoral_m Profil |
#1 · Zasláno: 7. 11. 2006, 15:19:23 · Upravil/a: zaoral_m
Mám 3 tabulky, s tímto propojením sloupců (vypisuju pouze vybrané ..)
tab: OBJEDNAVKA sloupce:id_obj (prim.key) id_akce tab:AKCE sloupce:id_akce (prim.key) id_fir tab:FIRMA sloupce:id_fir (prim.k) firma a potřebuji vyhledat záznam FIRMA.firma na základě vstupu hodnoty OBJEDNAVKA.id_obj tohle poradi dotazu $dotaz = "SELECT cislo_obj, id_akce, material, mnozstvi, datum_o, cas_o, prijmeni_r, jmeno_r, stav, id_silo FROM objednavka LEFT JOIN material ON objednavka.id_mat=material.id_mat LEFT JOIN ridic ON objednavka.id_rid=ridic.id_rid LEFT JOIN stav ON objednavka.id_stav=stav.id_stav ORDER BY datum_o ASC"; $vysledek = mysql_query ($dotaz); if ($vysledek) { while ($radek = mysql_fetch_array ($vysledek, MYSQL_ASSOC)) { $id_a = $radek[id_akce]; $dotaz2 = "SELECT firma FROM akce LEFT JOIN firma ON akce.id_fir=firma.id_fir WHERE id_akce='$id_a'"; $vysledek2 = mysql_query ($dotaz2); $radek2 = mysql_fetch_array ($vysledek2, MYSQL_ASSOC); // zpracovani vysledku do tabulky } } mi hazi chybu Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ..... prvni dotaz vypisuju cely, v druhem mam jeste dalsi leftjoiny, ale jde mi o princip jak tohle resit, jestli to jde, nebo musim prekopat databazi |
||
Kajman_ Profil * |
#2 · Zasláno: 7. 11. 2006, 18:23:36
if (!($vysledek2 = mysql_query)) echo mysql_error();
|
||
Anonymní Profil * |
#3 · Zasláno: 7. 11. 2006, 22:17:58
asi jsem blbe popsal dotaz,
dejme tomu ze mam v databazi 3 tabulky se dvěma sloupci tab: OBJEDNAVKA sloupce: id_obj (prim.key) id_akce tab:AKCE sloupce: id_akce (prim.key) id_fir tab:FIRMA sloupce: id_fir (prim.k) firma pls poradte jak polozit sql dotaz, abych se na zaklade zname hodnoty ve sloupci id_obj dostal ke vsem moznym hodnotam sloupce firma |
||
Kajman_ Profil * |
#4 · Zasláno: 7. 11. 2006, 22:22:31
Dal bych to normálně do původního dotazu, aby se nemusel pro každý řádek zbytečně volat dotaz nový.
SELECT cislo_obj, id_akce, material, mnozstvi, datum_o, cas_o, prijmeni_r, jmeno_r, stav, id_silo, f.firma FROM objednavka LEFT JOIN material ON objednavka.id_mat=material.id_mat LEFT JOIN ridic ON objednavka.id_rid=ridic.id_rid LEFT JOIN stav ON objednavka.id_stav=stav.id_stav LEFT JOIN akce a on objednavka.id_akce=a.id_akce LEFT JOIN firma f on a.id_fir=f.id_fir ORDER BY datum_o ASC |
||
zaoral_m Profil |
#5 · Zasláno: 10. 11. 2006, 07:46:50
Díky, vůbec jsem netušil, že to jde dát do jednoho dotazu s dalším LEFT JOINem.
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0