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

时间:2009-07-09 13:40:09

标签: mysql google-app-engine gql

在MySQL中它就像:

从table1中选择*,其中column1位于('a','b','c');

如何在GQL中执行此操作?

3 个答案:

答案 0 :(得分:5)

答案 1 :(得分:4)

您可以使用以下其中一项

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

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

使用_ _ key _ _的调用比appengine上的*调用更有效。它使用较少的数据存储区调用以及较少的CPU来执行此操作。

答案 2 :(得分:1)

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