Rumah  >  Artikel  >  hujung hadapan web  >  Cara Menggunakan Klausa Bersyarat Di Mana untuk Menapis Dokumen Firestore?

Cara Menggunakan Klausa Bersyarat Di Mana untuk Menapis Dokumen Firestore?

Linda Hamilton
Linda Hamiltonasal
2024-10-22 23:06:29346semak imbas

How to Use Conditional Where Clauses to Filter Firestore Documents?

Menggunakan Conditional Where Clauses dalam Firestore

Firestore menyediakan klausa where untuk menapis dokumen pangkalan data berdasarkan syarat yang ditetapkan. Walau bagaimanapun, apabila berurusan dengan penapis dinamik yang melibatkan berbilang kriteria, membina bersyarat apabila klausa menjadi perlu.

Untuk menambah klausa bersyarat, anda boleh menggunakan objek Pertanyaan yang dikembalikan oleh kaedah collection() dalam Firestore. Objek Pertanyaan tidak boleh diubah, bermakna setiap satu di mana operasi klausa mencipta kejadian baharu.

Contoh:

Pertimbangkan penapis untuk senarai buku yang anda boleh menentukan warna, pengarang, dan kategori. Setiap kriteria ini boleh mempunyai berbilang nilai.

Book > Red, Blue > Adventure, Detective

Untuk menggunakan klausa bersyarat untuk penapis ini, anda boleh mengikuti langkah berikut:

<code class="javascript">var query = firebase.firestore().collection("book");

// Apply color filter
if (color) {
  query = query.where("color", "in", color);
}

// Apply category filter
if (category) {
  query = query.where("category", "in", category);
}

// Apply author filter
if (author) {
  query = query.where("author", "in", author);
}

// Order by date
query = query.orderBy("date");

// Get results
query.get().then(...)</code>

Pendekatan ini membolehkan anda menambah secara dinamik atau alih keluar klausa berdasarkan kriteria bersyarat anda.

Atas ialah kandungan terperinci Cara Menggunakan Klausa Bersyarat Di Mana untuk Menapis Dokumen Firestore?. 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