Django模型:时间戳上的反向索引,查询“n”个最新行

时间:2010-06-28 16:37:12

标签: mysql django django-models

我的日期时间充满了auto_now = True
数据库是mysql 范围查询不会直接对我有用 这个有衬垫吗?

为简单起见,我怎样才能获得10个字段值最高的行(让它为Integerfield)?

2 个答案:

答案 0 :(得分:2)

对于具有整数字段Model的模型field,这应该有效:

top10 = Model.objects.order_by('-field')[:10]

如果您希望django在该字段上有索引,则需要使用db_index选项在模型中定义它:

class Model(models.Model):
    field = IntegerField(db_index=True)

即使您要求最高值,常规数据库索引也应该有效。

答案 1 :(得分:0)

按字段顺序按降序排列并限制为10?

ORDER BY fieldname DESC LIMIT 10