簡體   English   中英

FirebaseFirestore 中的多個 whereEqualTo 條件

[英]Multiple whereEqualTo condition in FirebaseFirestore

嗨,所以我有這個確切的數據庫模式,其中有一個名為“狀態”的字段的文檔,這個字段有不同的值,它可以是“待定”、“已發送”等。

我有一個 FirebaseUI Recycler,我想加載包含這 2 個值的所有文檔。 到目前為止,我已經嘗試過這段代碼:

Query query = fStore.collection("friendRequests").document(currentUID)
            .collection("userFriendRequest")
            .whereEqualTo("status", "pending") //1 condition
            .whereEqualTo("status", "sent"); //2 condition

但我遇到了麻煩,因為它什么都不返回,我試過 arrays 但我也無法讓它工作。

問題:知道我在哪里失蹤了嗎?

架構圖片: 在此處輸入圖像描述 在此處輸入圖像描述

此查詢是一個 AND 條件,它不會工作,因為一個文檔中的字段不能有兩個值,您可以執行以下操作:

Query query = fStore.collection("friendRequests").document(currentUID)
            .collection("userFriendRequest")
            whereIn("status", Arrays.asList("pending", "sent");

使用 in 運算符將同一字段上的最多 10 個相等 (==) 子句與邏輯或組合起來。 in 查詢返回給定字段與任何比較值匹配的文檔

https://firebase.google.com/docs/firestore/query-data/queries#in_and_array-contains-any

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM