項目中有這樣的查詢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