Django条件注释与DateTimeField上的连接

时间:2014-01-28 22:37:39

标签: sql django

是否可以使用来自另一个表的条件数据来注释查询集。 例如,我有以下表格:

class User(Model):
    name = CharField()
    created = models.DateTimeField(default=timezone.now)

class Event(Model):
    name = CharField()
    created = models.DateTimeField(default=timezone.now)
    condition = models.IntegerField()

我需要使用创建字段大于事件创建字段的用户数量来注释每个事件。然后我想只选择那些注释值大于Event.condition的事件。 在原始SQL中似乎很容易:

SELECT COUNT(*), event.id FROM event 
JOIN user ON user.created > event.created
GROUP BY event.id
HAVING COUNT(*) > event.condition;

虽然不确定是否可以在没有extra()函数的情况下使用django ORM创建。

0 个答案:

没有答案