【问题标题】:GQL: Find all entities that contain a substringGQL:查找包含子字符串的所有实体
【发布时间】:2011-03-11 11:31:37
【问题描述】:

我有一些具有 StringProperty 的实体,我想查询与子字符串匹配的所有实体。有没有办法只使用 GQL 来做到这一点?

例如,如果我的数据存储区如下所示:

ID/Name     question_text
--------------------------------------------------------------
3001        I like to eat chicken.
3020        I only like to eat chicken that is deep fried.
3045        I like filet mignon.
3052        I like cheese.

要查找在 question_text 中包含“鸡”的所有实体,GQL 查询会是什么?

【问题讨论】:

标签: google-app-engine gql


【解决方案1】:

您正在寻找的是对 StringProperty 的全文搜索。这就是 SearchableModel 的创建目的。

基本上,它使用任务队列在您的实体上创建一个新属性,该属性是文本字段中所有字符串(我相信双元组和三元组)的列表。然后通过 SELECT * FROM whatever WHERE 'chicken' IN strings_list 之类的 GQL 查询来搜索“鸡”

【讨论】:

  • 为了澄清,这仅适用于完整的单词,因此根据您的示例数据搜索“chicke”不会返回任何内容。
  • 您能否举一个适用于“chicke”的示例?
猜你喜欢
  • 2012-09-30
  • 1970-01-01
  • 1970-01-01
  • 2015-07-16
  • 2016-03-03
  • 2012-06-28
  • 1970-01-01
  • 2015-02-18
  • 2013-05-13
相关资源
最近更新 更多