【问题标题】:Cloud Datastore 'like' queryCloud Datastore“喜欢”查询
【发布时间】:2017-02-21 23:09:45
【问题描述】:

我在 Google Cloud Datastore 中有一个实体。属性之一是字符串数组。例如:

属性:技能

实体 1:
值:["mysql","sqlserver","postgresql","sqllite","sql-server-2008","sql"]

实体 2:
值:["css","css3"]

现在,我需要查询那些包含数组元素css*的实体

在典型的 SQL 中,它将是 select * from kindName where skills like 'css%'

我尝试了select * from kindName where skills = 'css',效果很好,但我怎样才能获得具有类似于 SQL 查询的css* 元素的实体?

或者

为此建模数据的最佳方法是什么?

【问题讨论】:

标签: google-app-engine google-cloud-datastore google-cloud-platform gql


【解决方案1】:

您可以对单个索引属性进行不等式范围检查,如下例所示。对字符串的范围检查本质上是对字符串执行前缀搜索的方式。

SELECT * from yourKind WHERE skills >= "css" AND skills < "cst"

例如,这里是对我在 Cloud Datastore 的 UI 控制台中创建的一些示例数据执行的查询:

【讨论】:

    猜你喜欢
    • 2014-03-30
    • 2012-12-23
    • 2012-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-03
    相关资源
    最近更新 更多