Frank: Zufall mit MySQL

Ich möchte von einer MySQL Datenbank von ca 1000 Einträgen einen zufällig auswählen.Dies mache ich mit:

SELECT * FROM tabelle ORDER BY RAND() LIMIT 1

Doch leider ist dies kein richtiges Zufallsergebnis. Es passiert viel zu oft, das bei 10 Abfragen mehrmals der selbe Eintrag ausgewählt wird. Kann man den MySQL Zufallsgenertor mit irgeneinem parametr verbessern oder gibts ne Möglichkeit ne echte Zufallszahl in MySQL zu generieren ?

  1. Hallo,
    mit PHP kannst du eine zufallszahl zwischen x - x bestimmen.

    Die ID gibts du dann aus

    Hier ein beispiel aus selfphp:
    <?PHP
    srand((double)microtime()*1000000);
    echo rand();
    ?>

    MFG
    Andavos

    --
    http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
  2. Hello,

    Ich möchte von einer MySQL Datenbank von ca 1000 Einträgen einen zufällig auswählen.Dies mache ich mit:

    SELECT * FROM tabelle ORDER BY RAND() LIMIT 1

    Doch leider ist dies kein richtiges Zufallsergebnis. Es passiert viel zu oft, das bei 10 Abfragen mehrmals der selbe Eintrag ausgewählt wird. Kann man den MySQL Zufallsgenertor mit irgeneinem parametr verbessern oder gibts ne Möglichkeit ne echte Zufallszahl in MySQL zu generieren ?

    select *, rand() as zufall  from TEST order by zufall Limit 1;

    Ich habe beide Möglichkeiten ausprobiert und die zweite erscheint mir tatsächlich zufälliger. Erklären kann ich das aber auch nicht.

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen