我的django应用程序中有下一个结构:
class A(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=100)
time = models.DateTimeField(auto_now_add=True)
我要在数据库中选择每个名称的最早时间,如:
╔═════╤══════╤════════════╗
║ id │ name │ time ║
╠═════╪══════╪════════════╣
║ 1 │ a │ 2018-09-10 ║
║ 2 │ a │ 2018-09-11 ║
║ 3 │ b │ 2018-09-10 ║
║ 4 │ b │ 2018-09-11 ║
╚═════╧══════╧════════════╝
那么结果应该是:
╔═════╤══════╤════════════╗
║ id │ name │ time ║
╠═════╪══════╪════════════╣
║ 1 │ a │ 2018-09-10 ║
║ 3 │ b │ 2018-09-10 ║
╚═════╧══════╧════════════╝
我知道rawsql是一种解决方案,但是可以使用django查询表达式吗?我用的是django1.8。请帮忙。
1条答案
按热度按时间2sbarzqh1#
我们可以通过以下方式实现:
这将导致
QuerySet
包含字典的对象:在本例中,它看起来像:因此您可以遍历queryset,从而处理dictionary元素。