特定の 4 つのカテゴリから「4 つの異なるランダム レコード」を選択し、昇順に並べ替える必要があります。
16 個のランダムなレコードを選択しようとして、category_id でグループ化しました
クエリ:
SELECT * FROM
(
SELECT
id,
category_id,
description,
RAND() AS rnd
FROM questions
ORDER BY rnd
LIMIT 16
) AS temp
GROUP BY temp.category_id
LIMIT 4
しばらくすると結果:
id category_id description rnd
--------------------------------------------------------------
224 1 Question 7 0.004305024635330797
293 2 Question 10 0.006966075866451558
601 3 Question 2 0.001877430828174046
958 4 Question 54 0.0065207639769844375
他の瞬間の結果:
id category_id description rnd
--------------------------------------------------------------
230 1 Question 2 0.01622675640157122
310 2 Question 21 0.005430353810480194
159 4 Question 17 0.021778853630441106
問題は、このクエリを修正するために必要な 4 つのカテゴリが常に表示されるとは限らないことです。これまでのところ、実際の解決策を見つけることができません。
あなたの助けが必要です !
前もって感謝します !