我有以下查询:
titles = Title.objects.all()
在某些情况下,我需要获取DISTINCT ('title')
此查询。Django 不允许distinct('title')
使用 MySQL 后端。
本质上,我想做的是:
titles = titles.extra('GROUP BY title')
我将如何正确地做到这一点?
我有以下查询:
titles = Title.objects.all()
在某些情况下,我需要获取DISTINCT ('title')
此查询。Django 不允许distinct('title')
使用 MySQL 后端。
本质上,我想做的是:
titles = titles.extra('GROUP BY title')
我将如何正确地做到这一点?
您是否尝试过使用该.distinct()
方法?
titles = Title.objects.values('title','other_columns_you_care_about_and_not_distinct').distinct()
如果您在 a.distinct()
上执行操作,.all()
您将返回与开始时一样多的行,当然前提是您的 id 列是唯一的。因此,您只需在.values()
.
你需要做[annotate][1]
的分组
titles = titles.annotate(Count("title")).order_by()