Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was ist der beste Weg, um 1000 zufällige Zeilen (nicht doppelte Zeilen) von MySQL zu erhalten?

Nun, aus dem Kommentar sind Sie auch mit einer theoretischen Antwort zufrieden.

Wenn Sie Ihr Array mit allen Zeilen haben, verwenden Sie array_unique() Um doppelte Zeilen zu entfernen, verwenden Sie shuffle() um sie zu mischen und am Ende können Sie ein Slice mit array_slice() .

BEARBEITEN:

Sie können es verbessern, wenn Sie bereits keine doppelten Zeilen auswählen, dann müssen Sie array_unique() nicht verwenden . Verwenden Sie dazu DISTINCT . Und wenn Sie alles in einer Abfrage machen wollen, können Sie so etwas tun:

SELECT DISTINCT column FROM table
ORDER BY RAND()
LIMIT 1000