Firestore提供了一種使用「==」和「!=」等運算子查詢資料的強大方法。處理動態過濾器時,有必要根據使用者輸入有條件地套用 where 子句。
考慮這樣的場景:您有一個具有顏色、作者和類別等屬性的書籍清單。您希望允許使用者根據多種顏色和類別選擇來過濾書籍。讓我們深入研究如何使用 Firestore where 子句來實現這一點。
<code class="javascript">// Assume you have dynamic filters captured as arrays const colors = ["Red", "Blue"]; const categories = ["Adventure", "Detective"]; // Create the base query var query = firebase.firestore().collection("book"); // Loop through the dynamic filters and add where clauses if (colors.length > 0) { query = query.where("color", "in", colors); } if (categories.length > 0) { query = query.where("category", "in", categories); } // Add ordering logic query = query.orderBy("date"); // Execute the query query.get().then((querySnapshot) => {...});</code>
在上面的範例中,我們先建立基本查詢。然後,我們根據使用者選擇的過濾器的存在有條件地添加 where 子句。最後,我們應用排序並執行查詢。
這種方法可讓您動態套用多個 where 子句,使其靈活且能夠適應不斷變化的使用者首選項。請記住,您需要確保處理空過濾器以避免不必要的查詢。
以上是如何在 Firestore 中實作多個條件 where 子句?的詳細內容。更多資訊請關注PHP中文網其他相關文章!