Django order_by() 不能与 distinct() 一起工作
Django order_by() is not working along with distinct()
如何将 order_by() 与 distinct() 结合使用?
我有多个相同的 run_id 和不同的 end_time 并试图过滤不同的 run_id 并按 end_time
排序
data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('-end_time'))
错误如下:-
django.db.utils.ProgrammingError: SELECT DISTINCT ON expressions must match initial ORDER BY expressions
不过following ORM works fine without order_by
可是我想要最新的end_time
data = list(table_name.objects.filter(experience=experience).values('run_id', 'end_time').distinct('run_id'))
distinct() 中的列也必须在 order_by()
中
data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('run_id', '-end_time'))
什么是数据库?
尝试:
data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('run_id', '-end_time'))[::1]
如何将 order_by() 与 distinct() 结合使用?
我有多个相同的 run_id 和不同的 end_time 并试图过滤不同的 run_id 并按 end_time
排序data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('-end_time'))
错误如下:-
django.db.utils.ProgrammingError: SELECT DISTINCT ON expressions must match initial ORDER BY expressions
不过following ORM works fine without order_by
可是我想要最新的end_time
data = list(table_name.objects.filter(experience=experience).values('run_id', 'end_time').distinct('run_id'))
distinct() 中的列也必须在 order_by()
中data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('run_id', '-end_time'))
什么是数据库?
尝试:
data = list(table_name.objects.filter(experience=experience)\
.values('run_id', 'end_time').distinct('run_id').order_by('run_id', '-end_time'))[::1]