【发布时间】:2012-03-20 10:53:03
【问题描述】:
有没有更简单的方法可以按重量进行选择和排序?
fetchCount = 1000
date1 = datetime.datetime.utcnow().date()
entries = GqlQuery("SELECT * FROM Entry WHERE category = :category and date >= :datetime ORDER BY date, weight DESC", category = category, datetime = date1).fetch(fetchCount)
if entries is not None:
# Sort entries ( lazy way for now ).
sort = True
while sort:
sort = False
for i in range(0, len(entries)-1):
if entries[i].weight < entries[i + 1].weight:
e = entries[i + 1]
entries[i + 1] = entries[i]
entries[i] = e
sort = True
【问题讨论】:
-
目前的方式有什么难点?
-
因为我不想每次都这样排序,如果可能的话,我想用查询本身来做。
-
没看懂问题,是不是第一个查询不行?
-
是的,第一个查询有效,但它只按日期排序,根本不按重量排序……我需要按重量排序。
标签: google-app-engine google-cloud-datastore gql