Autor Zpráva
zaoral_m
Profil
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 *
if (!($vysledek2 = mysql_query)) echo mysql_error();
Anonymní
Profil *
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 *
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
Díky, vůbec jsem netušil, že to jde dát do jednoho dotazu s dalším LEFT JOINem.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0