Google app engine GQL按ID选择(包括ID)过滤器

Google app engine GQL按ID选择(包括ID)过滤器,google-app-engine,python-2.7,gql,gqlquery,Google App Engine,Python 2.7,Gql,Gqlquery,我在寻找一些例子,在GQL中,我可以选择除ID之外的属性,也可以按ID过滤 我想要实现的伪代码如下所示: myResults = db.GQLQuery("select __KEY__, ATTR1, ATTR2 from MyTABLE" "WHERE __key__ > KEY('MyTable',:LAST_ID) "order by ID DESC LIMIT 100"

我在寻找一些例子,在GQL中,我可以选择除ID之外的属性,也可以按ID过滤

我想要实现的伪代码如下所示:

myResults = db.GQLQuery("select __KEY__, ATTR1, ATTR2 from MyTABLE" 
                            "WHERE __key__ > KEY('MyTable',:LAST_ID)
                            "order by ID DESC LIMIT 100")
我看到了一些示例,其中我获得了密钥,但我需要迭代密钥以获得记录

是否有一种方法可以让我根据KEY/ID标准获取记录集合


提前感谢

您使用
\uuuuu key\uuuu
的方式意味着新记录的所有键都比以前创建的键大(事实并非如此)。如果要按创建时间筛选,则需要为此添加一个字段,设置为创建记录。

否我需要查询结果集合的唯一ID。

否最后一个ID可能有误导性。在本例中,我指的是在先前存储的IDY之后获取所有记录,我正确地解释了这一点,并且我的答案仍然有效。您不能按键>X筛选以获取更新的记录。给定记录的键可以大于或小于任何其他记录,而与它们的创建时间无关。如果要按创建时间进行筛选,则需要使用其他属性。这很好。我可以接受这样一个事实,ID可能不是临时增量的。只要我没有以前拿到的ID,我就很好。这是一个非常基本的SQL需求。也许我遗漏了什么,但我不知道为什么谷歌让它变得有些复杂。为什么键包含表名ID。为什么只有ID是不够的。为什么我不能基于ID进行获取。为什么它应该与其他属性(除了索引、唯一等)区别对待。谢谢&关于你的要求越来越不清楚了。如果您只想获取项目(包括键),并且只想确保您没有获取已检索的项目,则应使用查询和光标:。抱歉,造成混淆。是的,我可以按照链接的建议做,但我也需要ID——因为它们将在另一个表或同一个表中用作外键(在某些情况下,我需要层次关系)。我不明白的是,如果我可以获得密钥(以及ID)和属性,为什么谷歌不允许我在一个查询中获得它们。我看不出他们应该阻止用户这样做的技术原因。