1
我有一個包含各種類別和每個類別的多個條目的表。從表中選擇隨機但不同的行 - MySQL
Word | Category
------------------
Apple | Food
Orange | Food
Grapes | Food
Mango | Food
我想找回3個隨機行的類別「食物」,爲此,我運行下面的查詢,
$query = "SELECT * FROM table WHERE category='food' ORDER BY RAND() LIMIT 3"
$fetch_row = mysqli_query($db_connect, $query);
while ($row = mysqli_fetch_array($fetch_row)) {
array_push($words, $row['word']);
}
然而,當我打印的數組$字的內容,他們例如有時會重複(並非全部);
蘋果,橘子,蘋果
即它並不總是唯一的。我想爲特定類別選擇隨機但唯一的單詞。我究竟做錯了什麼?我嘗試瞭解其他相關的答案,但我一直在搞點東西。我也嘗試了下面的查詢;
SELECT * FROM table WHERE category='food' GROUP BY category ORDER BY RAND() LIMIT 3
但是,這仍然偶爾會給出重複。
好了,我不知道該說些什麼,只是想知道我怎麼錯過了這一點。感謝您指出x) – Anas
@Anas我們都從錯誤中學習。別擔心。很高興幫助你:) :) –