在desc日期排序中删除NULL

时间:2013-06-13 20:44:06

标签: python django

我有以下查询:

 tasks.order_by('order_item__due_date')

但是,显示的第一个结果是due_date = NULL。

我如何进行排序,使得due_date必须首先为非null,然后按日期排序。类似的东西:

tasks.order_by('order_item__due_date=not null', 'order_item__due_date')

请注意,我不想过滤掉任何结果。我只想将null结果推到最后。相当于这样做:

  tasks.filter(order_item__due_date__isnull=False).order_by('due_date)
+ tasks.filter(order_item__due_date__isnull=True)

1 个答案:

答案 0 :(得分:1)

tasks.filter(order_item__due_date__isnull=False).order_by('order_item__due_date')

isnull QuerySet method documentation