Wenn Sie möchten, dass der resultierende Datensatz vorhanden ist nach dem Zufallsprinzip bestellt , sollten Sie die folgenden Codes gemäß mehreren Datenbanken verwenden.
Textgröße Latex
Hier stellt sich die Frage: Was ist nötig, um einen zufälligen Datensatz oder eine Zeile aus einer Datenbank abzurufen?
Manchmal möchten Sie möglicherweise zufällige Informationen anzeigen, z Artikel, Links, Seiten usw. an Ihren Benutzer.
Wenn Sie zufällige Zeilen aus einer der Datenbanken abrufen möchten, müssen Sie je nach Datenbank einige geänderte Abfragen verwenden.
Wenn Sie mit MY SQL eine zufällige Zeile zurückgeben möchten, verwenden Sie die folgende Syntax:
js-Array
SELECT column FROM table ORDER BY RAND () LIMIT 1;
SELECT column FROM table ORDER BY RANDOM () LIMIT 1;
SELECT TOP 1 column FROM table ORDER BY NEWID ();
SELECT column FROM (SELECT column FROM table ORDER BY dbms_random.value) WHERE rownum = 1;
SELECT column RAND () as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY;
Um dieses Konzept praktisch zu verstehen, sehen wir uns einige Beispiele für die Verwendung der MySQL-Datenbank an. Stellen Sie sich vor, wir haben in der Datenbank Tabellenelemente mit den folgenden Daten erstellt:
Tabelle: Artikel
AUSWEIS | Artikelname | Artikel Menge | Stückpreis | Kaufdatum |
---|---|---|---|---|
1 | Seife | 5 | 200 2021-07-08 | |
2 | Zahnpasta | 2 | 80 | 10.07.2021 |
3 | Stift | 10 | fünfzig | 12.07.2021 |
4 | Flasche | 1 | 250 | 13.07.2021 |
5 | Bürste | 3 | 90 | 15.07.2021 |
Angenommen, wir möchten einen beliebigen zufälligen Datensatz aus der Artikeltabelle abrufen.
Wir werden die Abfrage wie folgt schreiben:
mysql> SELECT * FROM items ORDER BY RAND () LIMIT 1;
Möglicherweise erhalten wir folgende Ergebnisse:
dünner Algorithmus
AUSWEIS | Artikelname | Artikel Menge | Stückpreis | Kaufdatum |
---|---|---|---|---|
3 | Stift | 10 | zwanzig | 12.07.2021 |
Versuchen wir nun, dieselbe Abfrage noch einmal auszuführen.
mysql> SELECT * FROM items ORDER BY RAND () LIMIT 1;
Möglicherweise erhalten wir folgende Ergebnisse:
AUSWEIS | Artikelname | Artikel Menge | Stückpreis | Kaufdatum |
---|---|---|---|---|
5 | Bürste | 3 | 90 | 15.07.2021 |
Aus den obigen Ergebnissen können wir schließen, dass wir beide Male unterschiedliche Datensätze als Ausgabe erhalten, obwohl wir dieselbe Abfrage zweimal ausgeführt haben. Die RAND()-Funktion hat beide Male zufällige Datensätze für dieselbe Abfrage aus einer einzelnen Tabelle ausgewählt. Selbst wenn wir dieselbe Abfrage erneut ausführen, erhalten wir daher jedes Mal eine andere Ausgabe. Es besteht die seltene Möglichkeit, mit der RAND()-Funktion nacheinander denselben Datensatz abzurufen.
Angenommen, Sie möchten, dass alle Datensätze der Tabelle zufällig abgerufen werden.
Dazu müssen wir die folgende Abfrage ausführen:
mysql> SELECT * FROM items ORDER BY RAND ();
Möglicherweise erhalten wir folgende Ergebnisse:
Zeile Autocad-Befehl
AUSWEIS | Artikelname | Artikel Menge | Stückpreis | Kaufdatum |
---|---|---|---|---|
4 | Flasche | 1 | 250 | 13.07.2021 |
5 | Bürste | 3 | 90 | 15.07.2021 |
1 | Seife | 5 | 200 | 08.07.2021 |
2 | Zahnpasta | 2 | 80 | 10.07.2021 |
3 | Stift | 10 | fünfzig | 12.07.2021 |
Es besteht auch die Möglichkeit, dass die Datensätze anders angeordnet werden, wenn wir die RAND()-Funktion erneut für die Mitarbeitertabelle ausführen.