首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GAE通过使用GQL,如何使用SQL的like查询?

GAE通过使用GQL,如何使用SQL的like查询?
EN

Stack Overflow用户
提问于 2010-11-29 14:41:54
回答 1查看 716关注 0票数 0

定义post(self):

代码语言:javascript
复制
    selector = self.request.get('search')
    search = db.GqlQuery("SELECT * FROM Product WHERE productName = :selector", selector=selector)
    products = search.fetch(10)
    values = {
        'products' : products
        }
    doRender(self, 'search.html', values)

以上代码是从我的产品类别的搜索功能…实际上,我尝试使用代码"Select * From Product Where productName like %:selector%“作为我的搜索函数,但是我不能使用这个代码...有没有其他的GQL代码可以替代'SQL-LIKE query'??

EN

回答 1

Stack Overflow用户

发布于 2010-12-15 15:43:31

App Engine中没有与SQL类似的等价物。但是,您可以执行以下操作

代码语言:javascript
复制
blurred_product_name = selector[:-2]
search = db.GqlQuery('SELECT * FROM Product where productName > ',
                                          blurred_product_name)

因此,如果您有名称为产品-1、产品-2、产品-3的产品,并且搜索词是“产品”,那么您的blirred_product_name将是"Produc“,它将返回本例中的所有三种可能性。但是,使用索引时要小心。

或者,您可以很好地使用SearchableModel http://www.billkatz.com/2008/8/A-SearchableModel-for-App-Engine并轻松完成此任务。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4301429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档