【发布时间】:2010-11-25 11:03:58
【问题描述】:
我是 Django 新手,但在简单查询方面仍有一些问题。
假设我正在编写一个电子邮件应用程序。这是邮件 型号:
class Mail(models.Model):
to = models.ForeignKey(User, related_name = "to")
sender = models.ForeignKey(User, related_name = "sender")
subject = models.CharField()
conversation_id = models.IntegerField()
read = models.BooleanField()
message = models.TextField()
sent_time = models.DateTimeField(auto_now_add = True)
每封邮件都有一个conversation_id,用于标识一组电子邮件信息 这是书面和答复。现在,为了在收件箱中列出电子邮件,我 希望 gmail 仅显示每个对话的最后一封电子邮件。
我有可以完成这项工作的 SQL 等价物,但是如何为此构建本机 Django 查询?
select
*
from
main_intermail
where
id in
(select
max(id)
from
main_intermail
group by conversation_id);
提前谢谢你!
【问题讨论】: