django中order_by會影響values_list和distinct組合的查詢結果

項目中有這樣的查詢sql

TaskDetail.objects.values_list('deploy_app_groups', flat=True).distinct()

發現返回的結果中有重複項,django

看LOG中的sql語句,發現查詢了該表中的好幾個字段,而後對這幾個字段共同進行distinct,這樣確定不惟一。不知道爲何沒有隻查我須要的字段。app

參考了這個帖子:.net

https://stackoverflow.com/questions/10848809/django-model-get-distinct-value-listcode

加了一個drder_by,就能夠了。blog

TaskDetail.objects.order_by('deploy_app_groups').values_list('deploy_app_groups', flat=True).distinct()

查看具體執行的sql,也只查了須要查詢的字段。文檔

以下文章對該現象查了文檔,不過也沒說的太清楚,有興趣的能夠查看下get

https://blog.csdn.net/qq_27361945/article/details/80256298io

相關文章
相關標籤/搜索