ORDER BY RAND in MySQL

Preet Sanghavi 30 Januar 2023
  1. Einfügen von Einträgen in die Tabelle student_dates mit der INSERT-Anweisung in MySQL
  2. Zufälliges Sortieren der Werte der Tabelle student_dates mit der ORDER BY-Anweisung in MySQL
ORDER BY RAND in MySQL

In diesem Tutorial werden wir verstehen, wie man Werte oder Datensätze einer Tabelle in MySQL zufällig sortiert oder ordnet.

Die meisten Unternehmen und Organisationen, die MySQL zur Datenanalyse oder -visualisierung verwenden, müssen verschiedene Tabellenwerte ihrer Benutzer nach unterschiedlichen Kriterien sortieren.

Eine der effizientesten Techniken, um zu testen, ob verschiedene Benutzer in einer MySQL-Tabelle korrekt überprüft werden, besteht darin, zufällig Zugriff auf Benutzer zu erhalten. Es kann helfen, Konflikte zu vermeiden und den Benutzer basierend auf einer bestimmten Plattform besser zu verstehen.

MySQL unterstützt Analysten dabei, mithilfe der Funktion RAND() Zugriff auf zufällige Datensätze zu erhalten. Versuchen wir, diese Aussage genauer zu verstehen.

Bevor wir jedoch beginnen, erstellen wir einen Dummy-Datensatz, mit dem wir arbeiten können. Hier erstellen wir eine Tabelle, student_dates, zusammen mit ein paar Zeilen.

-- create the table student_dates
CREATE TABLE student_dates(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_date date,
  primary key(stu_id)
);

Einfügen von Einträgen in die Tabelle student_dates mit der INSERT-Anweisung in MySQL

Die vorherige Abfrage erstellt eine Tabelle mit dem Namen student_dates. Versuchen wir nun, mit Hilfe der INSERT-Anweisung Daten für einige Schüler hinzuzufügen. Dieser Vorgang kann wie folgt durchgeführt werden:

-- insert rows to the table student_dates
INSERT INTO student_dates(stu_id,stu_firstName,stu_date) 
 VALUES(1,"Preet",STR_TO_DATE('24-May-2005', '%d-%M-%Y')),
 (2,"Dhruv",STR_TO_DATE('14-June-2001', '%d-%M-%Y')),
 (3,"Mathew",STR_TO_DATE('13-December-2020', '%d-%M-%Y')),
 (4,"Jeet",STR_TO_DATE('14-May-2003', '%d-%M-%Y')),
 (5,"Steyn",STR_TO_DATE('19-July-2002', '%d-%M-%Y'));

Der obige Code würde die Studentendaten in die Tabelle student_dates eintragen.

Zufälliges Sortieren der Werte der Tabelle student_dates mit der ORDER BY-Anweisung in MySQL

Wie oben erwähnt, können wir die Anweisung order by in MySQL verwenden, um Werte zu sortieren. Diese Logik kann auch verwendet werden, um Datensätze in einer Tabelle zufällig zu sortieren. Dies kann mit dem Folgenden erfolgen.

SELECT * from name_of_the_table
ORDER BY RAND();

Wie wir oben sehen können, würden alle Tabellendatensätze mit der Funktion RAND() zufällig geordnet. Wir können dieses Konzept nun auf unsere Tabelle student_dates anwenden. Diese Operation kann mit der folgenden Abfrage durchgeführt werden.

SELECT * from student_dates
ORDER BY RAND();

Die Ausgabe des oben genannten Codes kann wie folgt dargestellt werden.

stu_id	stu_firstName	stu_date
5		Steyn			2002-07-19
3		Mathew			2020-12-13
4		Jeet			2003-05-14
1		Preet			2005-05-24
2		Dhruv			2001-06-14

Wie wir im oben genannten Codeblock sehen können, werden alle Datensätze der Tabelle student_dates zufällig sortiert. Wenn die obige Abfrage noch ein paar Mal ausgeführt wird, sieht die Ausgabe so aus.

stu_id	stu_firstName	stu_date
4		Jeet			2003-05-14
1		Preet			2005-05-24
2		Dhruv			2001-06-14
3		Mathew			2020-12-13
5		Steyn			2002-07-19

Die Werte sind zufällig sortiert, wie wir an den oben genannten Ausgabeblöcken sehen können.

So können wir mit Hilfe der ORDER BY-Anweisung und der RAND()-Funktion effizient verschiedene Datensätze einer bestimmten Tabelle in MySQL zufällig anordnen.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub