按字段值从Google App Engine数据存储选择数据

4 投票
2 回答
591 浏览
提问于 2025-04-16 00:20

我刚开始接触GAE(谷歌应用引擎)。和很多人一样,我习惯用标准的SQL来查询数据。

通常,当你想选择某个字段值的数据时,你会使用:

SELECT <columns> FROM <table> WHERE <column> = <wanted value>

这是在GAE中正确的做法吗?

<Model Class>.all().filter('<column> =', <wanted value>)

或者有没有更有效的方法呢?

补充:我还想说明,在这个特定的情况下,我只想要一个结果返回。那么有没有其他的命令可以在找到结果后就停止查找呢?

2 个回答

1

你可能想要使用 Model.gql('where column = :value', value=something),这个方法会返回一个 GqlQuery 对象。然后你可以用 GqlQuery.get() 来获取一个单独的项目。

6

你的代码已经很接近你想要的效果了——它创建了一个 查询 对象,这个对象可以用来查询数据存储。要真正得到结果,你需要执行这个查询。想要获取单个结果时,你可以使用 get() 方法:

result = <Model Class>.all().filter('<column> =', <wanted value>).get()

撰写回答