In MySQL kann die Auswahl eines Zufallswerts innerhalb eines bestimmten Bereichs durch die folgende Methode erreicht werden:
SELECT ROUND((RAND() * (max-min))+min) AS `foo`
Die Funktion RAND generiert einen zufälligen Bruch zwischen 0 und 1. Durch Multiplikation dieses Bruchs mit dem Bereich (max-min) und Addition von min erhalten wir einen Zufallswert innerhalb des gewünschten Bereichs. Mit der ROUND-Funktion wird das Ergebnis auf die nächste ganze Zahl gerundet.
Die bereitgestellte Abfrage erzeugt jedoch nur einen einzelnen Zufallswert. Wenn Sie mehrere Zufallswerte in einer einzelnen Zeile generieren müssen, können Sie die folgende Alternative in Betracht ziehen:
SELECT ROUND((RAND() * (max-min))+min) + 1 AS `foo`
Diese Methode stellt sicher, dass die generierten Zufallswerte eindeutig sind, indem sie 1 zum Ergebnis addiert.
Im Vergleich zwischen PHP und MySQL in den Antworten erwies sich MySQL als schneller, wenn nur der Zufallswert ausgewählt wurde. Wenn jedoch zusätzliche Spalten im Ergebnissatz erforderlich sind, wird PHP effizienter.
Das obige ist der detaillierte Inhalt vonWie generiert man in MySQL Zufallswerte innerhalb eines bestimmten Bereichs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!