云数据存储'喜欢'查询

时间:2016-10-13 00:55:14

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

我在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',它运行正常,但我怎样才能获得css*元素类似于SQL查询的实体?

或者

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

1 个答案:

答案 0 :(得分:0)

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

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

例如,以下是对我在云控制台中为云数据存储区创建的一些示例数据执行的查询:

Example performed in the Google Cloud Datastore's console