Autor Zpráva
blue
Profil *
Ahoj, asi by pmohla kapánek větší znalost syntaxe SQL, ale nějak na to nemůžu přijít. Když mám dvě joinované tabulky, kde v jedné jsou data z druhé reprezentovaná jen klíčem a dám dotaz jako

SELECT tabulka1.polozka1,tabulka2.polozka2 FROM tabulka1,tabulka2 WHERE tabulka2.polozka1=tabulka1.primarni_klic ...

tak to běhá v pohodě. Když do toho přimíchám třetí tabulku

... tabulka2.polozka2=tabulka3.primarni.klic ...

, výsledek se mi "znásobí" - přibude každá kombinaci pro každou odpovídající položku ze třetí tabulky... no, moc odbře jsem to asi nepopsal, ale snad mě někdo pochopí ..a poradí :)
KORMUS
Profil *
Nechci být nepříjemný, ale rada je jednoduchá: musíš vymyslet správný SELECT, takto ti nikdo neporadí a problém je skutečně pouze v tom, že asi napíšeš jiný SELECT než který by jsi chtěl.

Možná tu bude někdo lepší, kdo ti opravdu pomůže, ale tomu bych nevěřil.
blue
Profil *
no, přečet sem si to dvakrát, třikrát a problém jsem nenašel ..tak jsem se vydal sem... a když jsem si to přečet popáté, už se mrška chybka vyloupla ... nezbývá než souhlasit s Tvým doporučením .. dík :)
KORMUS
Profil *
zkus sem hodit ty (zkrácené) tabulky a ten tvůj JOIN - nějak civilizovaně
blue
Profil *
ono je to trošku složitější... ten SQL dotaz je výstupem skriptu ... a problém byl v zadání parametrů do skriptu, načež následoval špatný výstupní SQL dotaz, splet sem si = a => .... nemyslím ,že by se z téhle chyby někdo poučil bez znalosti celku, tak tu s tím ani nebudu zabírat místo ...
KORMUS
Profil *
OK. (zní to ale hodně divně ... "SQL dotaz je výstupem skriptu", ale budiž)
blue
Profil *
proč to zní divně ? možná jsem to šptně formuloval, ale připadá mi to vcelku přirozené ...
funkci dám paramatery v polích jako $pole_pro_výběr, $tabulky,$podmínky, $řazení, $limity
... a on mi to srovná a vyplivne text, něco jako

SELECT pole_pro_výběr FROM $tabulky WHERE $podminky ORDER BY $řazení LIMIT $limity (hodně zjednodušeno)

a tenhle text pak pošlu do mysql_query ....
Toto téma je uzamčeno. Odpověď nelze zaslat.

0