【发布时间】:2018-01-09 23:35:13
【问题描述】:
我在firestore中有订单集合,其中有状态字段(字符串),状态字段有那些字符串(待处理,烹饪,煮熟,发货,已交付),我想查询以仅获取那些具有状态(待处理,烹饪)的文档,熟)?
【问题讨论】:
标签: firebase google-cloud-firestore
我在firestore中有订单集合,其中有状态字段(字符串),状态字段有那些字符串(待处理,烹饪,煮熟,发货,已交付),我想查询以仅获取那些具有状态(待处理,烹饪)的文档,熟)?
【问题讨论】:
标签: firebase google-cloud-firestore
没有与 SQL SELECT * FROM Collection WHERE status IN (Pending, Cooking, Cooked) 等效的 Firestore。 Firestore 最接近的是允许范围查询,如Tim shows here。但这只有在值 (Pending, Cooking, Cooked) 在该范围内是连续的情况下才有效。如果不是,您将不得不执行多个查询。
由于这些值听起来像是流程中的步骤,因此您可以考虑在它们前面加上“步骤编号”:1_Pending, 2_Cooking, 3_Cooked。有了这些,查询一系列步骤变得容易得多。或者,您也可以添加一个额外的 stepNumber 属性,但您必须使其与步骤名称保持同步。
【讨论】:
1_Pending, 2_Cooking, 3_Cooked) 并过滤前缀或添加一个字段(例如步骤)并对其进行过滤。