【发布时间】:2020-11-09 21:20:50
【问题描述】:
我正在尝试获取 Django 模型的某个字段的所有唯一值。 不幸的是 sqlite 不支持字段上的 DISTINCT 所以以下不起作用
dates = Invoices.objects.distinct('invoice_date')
所以我试过了
dates = Invoices.objects.values_list('invoice_date').distinct()
第一眼看起来不错,因为 dates.count() 返回唯一值的数量。
但是len(dates) 仍然返回日期总数,当我通过list(dates) 将其转换为列表(以便能够构建 JSON 响应)时,我最终得到所有日期:/
如何获得唯一值列表? 还是用sqlite不可能?
【问题讨论】:
-
谢谢,这表明我错过了导致所需结果的 order_by('invoice_date') (尽管我不知道为什么 order_by 在这里是必要的)