Mysql 比较django queryset中的两个字段

Mysql 比较django queryset中的两个字段,mysql,django,Mysql,Django,如何在Django ORM中执行以下SQL查询 SELECT * FROM my_table WHERE date_added > date_created; 您可以对>使用:MyModel.objects.filter(date\u added\uu gt=date\u created) 有关查询集,请参阅文档 编辑: 如果创建的日期对您不可用,那么@Wolph的解决方案就是其中之一 我猜您没有创建的日期作为变量提供(正如@tthomassss假设的那样),因此它将是这样的: from

如何在Django ORM中执行以下SQL查询

SELECT * FROM my_table WHERE date_added > date_created;

您可以对
>
使用
MyModel.objects.filter(date\u added\uu gt=date\u created)

有关查询集,请参阅文档

编辑:
如果创建的日期对您不可用,那么@Wolph的解决方案就是其中之一

我猜您没有创建的
日期
作为变量提供(正如@tthomassss假设的那样),因此它将是这样的:

from django.db import models

YourTable.objects.filter(date_added__gt=models.F('date_created')
MyModel.objects.filter(date_added__gt=F('date_created'))
关于F表达式的文档:

您可以这样:

from django.db import models

YourTable.objects.filter(date_added__gt=models.F('date_created')
MyModel.objects.filter(date_added__gt=F('date_created'))

是的,我假设这两个字段都是给定的,因为OP没有指定它,如果没有,我会选择您的:)如果我们的字段被放置在一个关系中,例如:“order\uu date\u created”?这对我有效感谢我认为这不起作用,因为date\u created不可用。这一行会引起名称错误。您或我的答案正确,让我们看看David的实际意思:)