Autor Zpráva
jiricek001
Profil *
Zdravím,

potřebuji poradít s dotazem, mám 2 tabulky uživatelů.

1) users (id AI, jméno přijmení atp.)
2) users_parametry ( id AI, user_id (dle tabulky 1) , value ) - např

user_id 5000,
value = 30 (kuchař)

user_id 5000
value 38 (pilot)

A nyní chcí vyhledat uživatele, který má v tabulce users_parametry řádky, kde je hodnota sloupce "value" 30,38,48,50".
Nyní mi to najde pokud splňuje alespoň jednu kritérii (tedy např. 30) a nezajímá to, jestli volil i že musí být kuchař, pilot či mrzák..
Sql vypadá následovně.


SELECT user.*, param.* FROM users_parameters AS param 
INNER JOIN users AS user ON param.user_id=user.id AND param.value AND param.value IN(3,2) 
WHERE user.active='1' AND user.type='user' 
GROUP BY user.id 
ORDER BY user.top_priority DESC, user.register_date DESC 
LIMIT 0, 8


Děkuji za rady.
Kajman
Profil
Mrkněte na Některé časteji řešené dotazy pro MySQL - FAQ » Nalezení položek mající všechny hledané vlastnosti

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: