Invalid query. You cannot use more than one 'in' filter
Mar 1
this.ref.collection("users", ref => ref.where("uid1","in", [reciverId, senderId])
.where("uid2","in", [reciverId, senderId]))
give me error like
"Invalid query. You cannot use more than one 'in' filter"
1 answer
Accepted answer · original discussion
Mar 1
UPDATE:
Since the release of the Firebase JS SDK Version 9.18.0 on March 16, 2023 it is possible to combine several in clauses in a Query.
However note that "Cloud Firestore limits a query to a maximum of 30 disjunctions in disjunctive normal form", as explained in the documentation (which includes examples on the number of disjunctions for different types of queries)
OLD ANSWER:
This is indeed a limitation of Firestore, as explained in the documentation:
Limitations
Note the following limitations for in and array-contains-any:
- in and array-contains-any support up to 10 comparison values.
- You can use only one in or array-contains-any clause per query. You can't use both in and array-contains-any in the same query.
- You can combine array-contains with in but not with array-contains-any.
0 question comments
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.