我们如何使用gcloud ruby​​在数据存储区中创建OR Composite查询?

时间:2015-09-28 23:06:46

标签: ruby google-cloud-platform google-cloud-datastore

我使用gcloud ruby​​ gem并想发出复合查询(a = 1和(b = 2或c = 3))。我只能使用以下界面进行单个查询和可能的AND查询。

query = Gcloud::Datastore::Query.new
query.kind("Task").
  where("completed", "=", true)

1 个答案:

答案 0 :(得分:1)

根据

https://cloud.google.com/datastore/docs/concepts/queries#Datastore_query_interface

  

数据存储目前仅支持将过滤器与AND运算符组合。但是,通过发出多个查询并组合结果来创建自己的OR查询相对简单......

因此,您最好的选择是分别运行2个查询:

  • 选择a = 1且b = 2
  • 的记录
  • 选择a = 1且c = 3
  • 的记录

手动合并/重复删除结果。