Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh mendapatkan semula Baris Rawak daripada Jadual SQLite?

Bagaimanakah saya boleh mendapatkan semula Baris Rawak daripada Jadual SQLite?

Barbara Streisand
Barbara Streisandasal
2025-01-04 13:42:39552semak imbas

How Can I Retrieve a Random Row from an SQLite Table?

Menggunakan ORDER BY RANDOM() untuk Rawak Keputusan dalam SQLite

Dalam pengurusan pangkalan data, selalunya berguna untuk mendapatkan data dalam susunan rawak . Walaupun MySQL menyediakan fungsi RAND() untuk tujuan ini, SQLite 3 tidak mempunyai persamaan langsung. Walau bagaimanapun, terdapat pendekatan alternatif untuk mencapai hasil yang sama.

Alternatif kepada RAND() dalam SQLite 3

Untuk merawak susunan keputusan dalam SQLite 3, anda boleh menggunakan fungsi RANDOM() bersama dengan klausa ORDER BY. Berikut ialah sintaksnya:

SELECT * FROM table ORDER BY RANDOM() LIMIT 1;

Penjelasan

  • Fungsi RANDOM() menjana nombor rawak untuk setiap baris dalam jadual.
  • Klausa ORDER BY mengisih keputusan mengikut nombor rawak yang dijana.
  • HAD 1 klausa mengehadkan keputusan kepada satu baris.

Dengan menggabungkan elemen ini, SQLite 3 secara berkesan merawak susunan keputusan daripada jadual yang ditentukan.

Contoh

Pertimbangkan SQLite 3 berikut jadual:

CREATE TABLE people (id INTEGER PRIMARY KEY, name TEXT);
INSERT INTO people (name) VALUES ('John'), ('Mary'), ('Bob');

Untuk mendapatkan semula baris rawak daripada jadual ini, anda boleh menggunakan pertanyaan berikut:

SELECT * FROM people ORDER BY RANDOM() LIMIT 1;

Setiap kali anda melaksanakan pertanyaan ini, ia akan mengembalikan orang lain daripada jadual dalam susunan rawak.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan semula Baris Rawak daripada Jadual SQLite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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