269 Tipps rss | 8 Nutzer online

MySQL: Zufällige Datensätze ermitteln

SQL-Datenbanken sind Meister der Ordnung. Manchmal möchte man aber bewusst zufällige Ergebnisse erzielen. Zum Beispiel ist es für ein Content Managent System ein nettes Feature, wenn man in Kurzform eine zufällige Auswahl von Artikel präsentiert bekommt.

Bei MySQL ist so ein Ergebnis einfach zu erzielen.

Der Befehl ORDER BY bekommt als weitere Angabe üblicherweise eine oder mehrere Spalten mitbekommt, die die Sortierung bestimmen. Der Befehl akzeptiert an dieser Stelle aber auch die Funktion RAND(). Drei zufällige ausgewählte Artikel aus einer Tabelle "news" fördert beispielsweise folgendes Kommando zutage:

SELECT * FROM news ORDER BY RAND() LIMIT 3

Bei Tabellen mit sehr vielen Datensätzen ist diese Methode allerdings aufwändig, da MySQL für jeden Datensatz ein eigene Zufallszahl erzeugen muss.

Add to Del.icio.us


http://www.nils-haldenwang.de/webentwicklung/mysql-zufalligen-datensat
z-nach-relativer-haufigkeit-auswahlen-ohne-rand
Dort gibt es einen kurzen Artikel, wie man das auch ohne die MySQL
Funktion RAND() hinbekommen kann.
[nohfreak | 15.03.2009]
Antworten


Bedingungen für die Kommentareingabe
Hinweis



Ihr Kommentar:


Name:


Copyright © Der Strassenprogrammierer 1999-2012   | Tippscout 5.0
Zurück Tipps Startseite