Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Memilih Baris Rawak dengan Cekap dalam SQLite?

Bagaimanakah Saya Boleh Memilih Baris Rawak dengan Cekap dalam SQLite?

Mary-Kate Olsen
Lepaskan: 2024-12-25 01:30:14
asal
650 orang telah melayarinya

How Can I Efficiently Select Random Rows in SQLite?

Pemilihan Baris Rawak dalam SQLite

Dalam kebanyakan persekitaran pangkalan data, memilih baris rawak adalah tugas yang agak mudah. Walau bagaimanapun, dalam SQLite, sintaks MySQL yang biasa (SELECT * FROM table ORDER BY RAND() LIMIT X) malangnya tidak memberikan hasil yang diingini.

Ini menimbulkan persoalan: adakah terdapat kaedah yang setara untuk memilih baris rawak dalam SQLite?

Peningkatan Prestasi Penyelesaian

Jawapannya terletak pada mengoptimumkan prestasi SQL. Untuk peningkatan prestasi yang ketara, pernyataan berikut disyorkan:

SELECT * FROM table WHERE id IN (SELECT id FROM table ORDER BY RANDOM() LIMIT x)
Salin selepas log masuk

Sintaks yang dipertingkat ini menangani ketidakcekapan utama dalam pendekatan asal. Enjin SQL biasanya memuatkan semua medan baris yang diunjurkan ke dalam memori dan kemudian melaksanakan operasi pengisihan. Walau bagaimanapun, dalam kes kami, kami hanya perlu mengisih medan 'id' yang diindeks.

Dengan berbuat demikian, kami meminimumkan penggunaan memori dan overhed pemprosesan, menghasilkan prestasi yang lebih baik, terutamanya apabila saiz jadual bertambah. Kaedah ini terbukti lebih cekap dari segi penggunaan RAM dan penggunaan CPU.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Baris Rawak dengan Cekap dalam SQLite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan