Randoming and Sorting Data MySQL
Dalam MySQL, anda boleh menggabungkan klausa ORDER BY dengan fungsi rand() untuk mendapatkan semula rekod rawak daripada sebuah meja. Walau bagaimanapun, jika anda cuba mengisih lagi hasil rawak menggunakan lajur lain, anda mungkin menghadapi gelagat yang tidak dijangka.
Untuk menangani perkara ini, pertanyaan harus distrukturkan sebagai subkueri. Pertanyaan dalaman mendapatkan 20 pengguna rawak menggunakan ORDER BY rand() LIMIT 20.
<br>PILIH * DARI pengguna ORDER BY rand() LIMIT 20<br>
Jadual sementara yang terhasil, yang mengandungi pengguna rawak, kemudiannya dirujuk oleh pertanyaan luar. Pertanyaan luar mengisih semula jadual sementara mengikut lajur nama dalam tertib menaik:
PILIH * DARI
(
SELECT * FROM users ORDER BY rand() LIMIT 20
) T1
PESANAN MENGIKUT nama ASC
Pendekatan ini memastikan set hasil akhir terdiri daripada 20 pengguna yang dipilih secara rawak, dipesan mengikut nama mereka dalam tertib menaik.
Atas ialah kandungan terperinci Bagaimana untuk Memilih dan Menyusun Data Secara Rawak dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!