Wenn wir die RAND()-Funktion zusammen mit den ORDER BY- und LIMIT-Klauseln in einer Abfrage verwenden, gibt MySQL jedes Mal einen anderen Satz von Zeilen oder Werten zurück. Um es zu verstehen, betrachten Sie eine Tabelle „Mitarbeiter“ mit den folgenden Datensätzen:
mysql> Select * from Employee; +----+--------+--------+ | ID | Name | Salary | +----+--------+--------+ | 1 | Gaurav | 50000 | | 2 | Rahul | 20000 | | 3 | Advik | 25000 | | 4 | Aarav | 65000 | | 5 | Ram | 20000 | | 6 | Mohan | 30000 | | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+--------+--------+ 8 rows in set (0.00 sec)
Nun verwendet die folgende Abfrage die RAND()-Funktion und verwendet sowohl die ORDER BY- als auch die LIMIT-Klausel in der Abfrage, um zufällig unterschiedliche Werte oder Rowsets zurückzugeben:
mysql> Select * from employee ORDER BY RAND() LIMIT 4; +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 5 | Ram | 20000 | | 4 | Aarav | 65000 | | 6 | Mohan | 30000 | | 8 | Vinay | NULL | +----+-------+--------+ 4 rows in set (0.00 sec) mysql> Select * from employee ORDER BY RAND() LIMIT 4; +----+--------+--------+ | ID | Name | Salary | +----+--------+--------+ | 6 | Mohan | 30000 | | 8 | Vinay | NULL | | 2 | Rahul | 20000 | | 1 | Gaurav | 50000 | +----+--------+--------+ 4 rows in set (0.03 sec) mysql> Select * from employee ORDER BY RAND() LIMIT 4; +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 3 | Advik | 25000 | | 8 | Vinay | NULL | | 7 | Aryan | NULL | | 5 | Ram | 20000 | +----+-------+--------+ 4 rows in set (0.00 sec)
Wie Sie der obigen Ergebnismenge entnehmen können, wird bei jeder Ausführung der Abfrage ein zufällig unterschiedlicher Satz von Werten oder Zeilen zurückgegeben.
Das obige ist der detaillierte Inhalt vonWie können wir jedes Mal zufällig einen anderen Satz von Zeilen oder Werten aus einer MySQL-Tabelle erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!