gpt4 book ai didi

google-app-engine - Google App Engine 数据存储区中不精确查询的良好模式是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 15:31:30 24 4
gpt4 key购买 nike

Google App Engine 数据存储区查询语言 (gql) 不提供不精确的运算符,例如“LIKE”,甚至不区分大小写。可以通过存储字段的小写版本来解决区分大小写的问题。但是,如果我想搜索某个人但不确定姓名的拼写怎么办?是否有处理这种情况的公认模式?

最佳答案

引用文档:

提示:查询过滤器没有明确的方法来匹配字符串值的一部分,但您可以使用不等式过滤器伪造前缀匹配:

db.GqlQuery("SELECT * FROM MyModel WHERE prop >= :1 AND prop < :2", "abc", u"abc" + u"\ufffd")

这会将每个 MyModel 实体与以字符 abc 开头的字符串属性 prop 匹配。 unicode 字符串 u"\ufffd"表示可能的最大 Unicode 字符。当属性值在索引中排序时,落在该范围内的值是所有以给定前缀开头的值。

http://code.google.com/appengine/docs/python/datastore/queriesandindexes.html

另一个选项是 SearchableModel,但是,我认为它不支持部分匹配。

http://billkatz.com/2008/8/A-SearchableModel-for-App-Engine

关于google-app-engine - Google App Engine 数据存储区中不精确查询的良好模式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/508960/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com