カラム name を含む MySQL のテーブルがありますcategory
。それぞれから 2 つのランダムなレコードを返すクエリを作成しようとしていますcategory
。
これは、列category
の値が最も高い2 つのレコードを取得するために使用するコードです。rating
SELECT e1.*
FROM entries AS e1
WHERE (SELECT Count(*)
FROM entries AS e2
WHERE e2.category = e1.category
AND e1.rating <= e2.rating) <= 2
ORDER BY category,
rating DESC
このリンクをチェックして、いくつかのサンプル データと上記のクエリを含むテーブルを確認してください: http://sqlfiddle.com/#!9/bab8e/1