SELECT user.*, count(t1.*) AS adet FROM user JOIN (SELECT user_id FROM user_pref WHERE (ask_id=1 and (ansver_id=5 or ansver_id=30)) OR (ask_id=2 and (ansver_id=2 or ansver_id=5)) OR (ask_id=11 and (ansver_id=41 or ansver_id=45))) AS t1 ON user.user_id=t1.user_id GROUP BY user.user_id ORDER BY adet LIMIT 10;