Cloud Datastore“喜欢”查询

Sah*_*has 5 google-app-engine gql google-cloud-datastore google-cloud-platform

我在 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 查询类似的元素的实体?

或者

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

Dan*_*ath 2

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

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

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

在 Google Cloud Datastore 控制台中执行的示例