我有一系列事件,每个事件文档都有这些字段
'start_date'
和'end_date'
。我想做一个像这样的查询
db.collection(events).where('start_date', '>=', start).where('end_date', '<=', end)
这是一个有效的查询还是属于无效:不同字段的范围过滤器?
如果无效,在两个时间范围之间进行查询的有效解决方法是什么?
另外,我如何处理其他范围的查询,例如价格?
db.collection(events).where('categories.theatre', '==', true).where('price', '>=', price).where('start_date', '>=', start).where('end_date', '>=', end)
编辑:第二部分与Workaround for “Range filters on different fields” limitation?不同。此外,执行单独的查询并将它们组合在一起会创建重复数据,这在How to get all unique values from Firestore collection?
上找不到明显的方法