在django中选择所有最新时间戳?

时间:2015-07-08 14:43:32

标签: python mysql django

这似乎应该很明显,但我无法让它发挥作用。

我正在使用django来查询一个简单的表,其中定期插入一堆数据。我想写一个只使用最新时间戳来提取数据的视图,比如

select * from mytable
where event_time = (
    select max(event_time) from mytable);

适当的语法是什么?

2 个答案:

答案 0 :(得分:3)

您可以尝试使用latest方法。这里documentation

MyModel.objects.latest('event_time')

假设event_time具有日期值,这将返回最新对象(最大日期)

答案 1 :(得分:0)

您可以尝试:
假设您的表名是EventTime

EventTime.objects.all().order_by('-timestamp')[0]

[0]最后会给你第一个结果。
删除它,您将按顺序排列所有条目按时间戳排序

编辑:
@Gocht提出的更好的方法是:

EventTime.objects.all().order_by('-timestamp').first()

这将处理数据库中没有对象的情况。