您好我的GAE申请表上有这个:
try:
last = RegistroDescargas.gql("order by date DESC LIMIT 4")
except:
last = None
有了这个,我可以得到数据库的最后四行(“RegistroDescagas”)定义如下:
class RegistroDescargas(db.Model):
'''Model para guardar el registro de vídeos descargados en la web'''
date = db.DateTimeProperty(auto_now_add=True)
urlOrig = db.StringProperty(required=True)
urlImg = db.StringProperty(required=True)
vidTit = db.StringProperty(required=True)
vidDesc = db.TextProperty()
但是,当然,如果重复一个或最后四个结果,只是告诉我,我想要的是最后不重复四行,我不知道我怎么做......
有什么建议吗? (我想,如果最终这是可能的,可能会有一个完全不同的句子,但我不介意;))
任何帮助非常感谢..抱歉我的英文..
答案 0 :(得分:1)
GQL不支持DISTINCT查询。您可以做的壁橱是将结果放入一个集合中,并检查集合中的条目数量。如果少于四个,则查询其他记录。
这个答案更深入:Python: DISTINCT on GQuery result set (GQL, GAE)
否则,需要预先计算这种不同的列表。 GAE遵循一系列昂贵的写入来实现超快速读取。
答案 1 :(得分:0)
DISTINCT关键字是在release 1.7.4.中引入的。
您可以找到更新的GQL参考(例如Python)here。