Autor | Zpráva | ||
---|---|---|---|
meca Profil |
#1 · Zasláno: 27. 9. 2007, 15:42:58
Zdravim, narazil jsem na takový problém - totiž, namísto WHERE jsem jakoby používal podmínky u JOIN, avšak... toto mi nefunguje:
... JOIN sekce ON sekce.id = diskofilarny.id_sekce AND tagy_prirazeni.id_tagu =1 AND tagy_prirazeni.id_tagu =3 ... Dá se to nějak nahradit? Nebo by to fungovat mělo? Danke schone... |
||
Kajman_ Profil * |
#2 · Zasláno: 27. 9. 2007, 15:54:12
Asi protože tam používáte nějakou záhadnou třetí tabulku.
|
||
meca Profil |
#3 · Zasláno: 27. 9. 2007, 17:27:18
Kajman_
Ajo ty vole... Co to je za nesmysl? :-/ HLavně - jaktože to jenom s jednim AND fungovalo? :D |
||
meca Profil |
#4 · Zasláno: 27. 9. 2007, 17:46:39
Ale houby! Je to dobře... ;) Teda - s tim jedim. Ehm... Nedokážu to vysvětlim, ale chápe někdo, co jsem tím chtěl udělat?
Když to ještě bylo: LEFT JOIN tagy_prirazeni ON tagy_prirazeni.id_clanku = clanky.id JOIN sekce ON sekce.id = diskofilarny.id_sekce AND tagy_prirazeni.id_tagu =1 tak to jednoduše vybralo článek kde byl přiřazen ten TAG s id 1... Jde tedy nějak udělat, aby to vybíralo článek, ke kterému je přiřazen zároveň TAG s id 1 a id 3? |
||
meca Profil |
#5 · Zasláno: 28. 9. 2007, 11:07:19
Tak jinak... Už jsem přišel na to, jak to udělat s pomocí dvou dotazů - avšak stejnak mam v pytli ten první dotaz, jelikož:
|--id článku|----id tagu-| +-----------+--------------+ |------3----|-------1-------| +----------+--------------+ |------3----|-------3------| +----------+--------------+ |------4----|-------2------| +----------+--------------+ Jde z takové to tabulky nějak vytáhnout tu 3? Respektive teda id_článku, které má zároven id_tagu 1 a 3? |
||
Kajman_ Profil * |
#6 · Zasláno: 28. 9. 2007, 12:24:55
např.
select id_clanku from tabulka where id_tagu in (1,3) group by id_clanku having count(distinct id_tagu)=2 |
||
meca Profil |
#7 · Zasláno: 28. 9. 2007, 14:33:04
Kajman_
Holarí, díky! Nebudu předstírat, že tomu rozumim... Ale funguje to! Dík! |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0