Autor | Zpráva | ||
---|---|---|---|
Asd3f Profil * |
#1 · Zasláno: 18. 5. 2011, 19:21:24
Ahoj,
mám dvě tabulky s vazbou 1:N jedná se o tabulku články a o tabulku hodnocení. Hodnotit mohou pouze přihlášení uživatelé, čili se k hodnocení ukládá ID uživatele. Jak nejůsporněji vybrat články, které uživatel neohodnotil? Příklad tabulek: články -id -název -obsah hodnocení -id -uživatel -článek (vzdálený klíč na tabulku) -hodnota |
||
Asd3f Profil * |
#2 · Zasláno: 18. 5. 2011, 19:48:26
EDIT: jedná se o mysql
|
||
o_O Profil |
#3 · Zasláno: 18. 5. 2011, 20:09:15
SELECT id, nazev FROM clanky WHERE id NOT IN (SELECT clanek FROM hodnoceni WHERE uzivatel=$uid) Tuším, že by to mělo fungovat. |
||
Asd3f Profil * |
#4 · Zasláno: 18. 5. 2011, 20:12:47
Moc ti děkuji. Ještě mi funguje jedna možnost, takže je srovnám rychlostně
|
||
Kajman_ Profil * |
#5 · Zasláno: 18. 5. 2011, 20:13:36
Někdy může být rychlejší
SELECT c.id, c.nazev FROM clanky c LEFT JOIN hodnoceni h on c.id=h.clanek and h.uzivatel=42 where h.clanek is null Pro obě řešení je pak dobré mít nachystané indexy. |
||
Časová prodleva: 13 let
|
0