Teknik Pemilihan Baris Rawak SQL
Memilih baris secara rawak daripada jadual SQL ialah tugas biasa dengan pelbagai aplikasi. Panduan ini menunjukkan cara memilih lima baris unik daripada jadual bernama "customerNames" (dengan lajur "Id" dan "Name") menggunakan dialek SQL yang berbeza.
Kaedah MSSQL (Microsoft SQL Server)
Untuk MSSQL Server 2005 dan lebih baru, pertanyaan ini mendapatkan semula lima baris rawak dengan cekap:
<code class="language-sql">SELECT TOP 5 Id, Name FROM customerNames ORDER BY NEWID()</code>
NEWID()
menjana GUID rawak, memastikan pesanan rawak sebelum klausa TOP 5
mengehadkan set hasil.
Pemilihan Baris Rawak Merentas Pangkalan Data (Baris Tunggal)
Walaupun perkara di atas berfungsi untuk MSSQL, kaedah berikut menunjukkan pemilihan satu baris rawak merentas pelbagai sistem pangkalan data. Menyesuaikan ini untuk memilih lima baris memerlukan teknik tambahan (perincian di bawah).
<code class="language-sql">SELECT column FROM table ORDER BY RAND() LIMIT 1</code>
<code class="language-sql">SELECT column FROM table ORDER BY RANDOM() LIMIT 1</code>
<code class="language-sql">SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY</code>
<code class="language-sql">SELECT column FROM ( SELECT column FROM table ORDER BY dbms_random.value ) WHERE rownum = 1</code>
<code class="language-sql">SELECT column FROM table ORDER BY RANDOM() LIMIT 1</code>
Ingat untuk menggantikan "column"
dan "table"
dengan nama lajur dan jadual sebenar anda.
Memilih Berbilang Baris Rawak (Lima Baris)
Untuk melanjutkan pemilihan satu baris kepada lima baris yang berbeza, pendekatan yang lebih canggih selalunya diperlukan. Kaedah paling mudah, berulang kali menjalankan pertanyaan satu baris, tidak cekap dan mungkin tidak menjamin keunikan. Teknik yang lebih maju yang melibatkan fungsi tetingkap atau sambung sendiri biasanya lebih disukai untuk set data yang lebih besar untuk memastikan kedua-dua rawak dan perbezaan. Kaedah khusus akan bergantung pada sistem pangkalan data.
Pertimbangan Prestasi
Prestasi pertanyaan pemilihan baris rawak boleh dipengaruhi oleh saiz jadual dan pengoptimuman enjin pangkalan data. Untuk jadual yang sangat besar, strategi pensampelan alternatif mungkin diperlukan untuk mengelakkan kesesakan prestasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Lima Baris Berbeza Rawak daripada Jadual SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!