Dalam MySQL, memilih nilai rawak dalam julat tertentu boleh dicapai melalui kaedah berikut:
SELECT ROUND((RAND() * (max-min))+min) AS `foo`
Fungsi RAND menjana pecahan rawak antara 0 dan 1. Dengan mendarab pecahan ini dengan julat (min maks) dan menambah min, kami memperoleh nilai rawak dalam julat yang dikehendaki. Fungsi ROUND digunakan untuk membundarkan hasil kepada integer terdekat.
Pertanyaan yang diberikan, walau bagaimanapun, akan menghasilkan hanya satu nilai rawak. Jika anda perlu menjana berbilang nilai rawak dalam satu baris, anda boleh mempertimbangkan untuk menggunakan alternatif berikut:
SELECT ROUND((RAND() * (max-min))+min) + 1 AS `foo`
Kaedah ini memastikan bahawa nilai rawak yang dijana adalah unik dengan menambah 1 pada hasil.
Dalam perbandingan PHP vs. MySQL yang disediakan dalam jawapan, MySQL terbukti lebih pantas apabila memilih nilai rawak sahaja. Walau bagaimanapun, jika lajur tambahan diperlukan dalam set hasil, PHP menjadi lebih cekap.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Nilai Rawak Dalam Julat Tertentu dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!