Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何在GQL(谷歌查询语言)中实现这一点_Mysql_Google App Engine_Gql - Fatal编程技术网

Mysql 如何在GQL(谷歌查询语言)中实现这一点

Mysql 如何在GQL(谷歌查询语言)中实现这一点,mysql,google-app-engine,gql,Mysql,Google App Engine,Gql,在MySQL中,它就像: 从表1中选择*,其中列1位于('a','b','c') 如何在GQL中实现这一点?您可以使用以下选项之一 result = db.GqlQuery("Select __key__ from model where column in ('a','b','c')") 或 使用u_____;键的调用比appengine上的*调用效率要高得多。它使用更少的数据存储调用和更少的CPU来完成这项工作。正如您所描述的那样,它工作得很好-但是请注意,IN查询是在Python A

在MySQL中,它就像:

从表1中选择*,其中列1位于('a','b','c')


如何在GQL中实现这一点?

您可以使用以下选项之一

  result = db.GqlQuery("Select __key__ from model where column in ('a','b','c')")


使用u_____;键的调用比appengine上的*调用效率要高得多。它使用更少的数据存储调用和更少的CPU来完成这项工作。

正如您所描述的那样,它工作得很好-但是请注意,IN查询是在Python API中实现的,并转换为多个底层数据存储查询。如果有其他方法可以获取数据,我强烈建议使用它。

+1只是为了给我介绍一个新术语:-DGo到主应用程序引擎站点()。单击“文档”,然后单击“存储数据”(在python标题下)。然后点击“gql参考”。如何使专栏支持全文搜索,你能提供一个演示吗?据我所知,你不能。全文搜索需要从数据库中进行大量工作。例如,SQLServer将其分解并存储在文件系统中,以加快索引速度。TextProperty()和StringProperty()列可以编制索引,而Blob样式列不能编制索引。这意味着它将需要大量的工作来减少数据以进行搜索。但gae支持全文搜索,因此必须有一个解决方案。搜索过谷歌后,它似乎支持它,但不是很好。类模型(search.SearchableModel):text=db.TextProperty()要搜索它,您可以执行类似model=models.all().search('searchtext')的操作。在您的业务逻辑中,我确实看到很多东西说它在保存对象时会命中put()调用。它看起来也可能会影响你的数据存储使用很多!这些API隐藏了正在发生的真实情况,是数据存储支持全文搜索,对吗?所以数据存储必须有一个用于索引和全文搜索的语法,但谷歌打算暂时不发布该文档。
   result = db.GqlQuery("Select * from model where column in ('a','b','c')")