Reputation: 14335
I want to execute group by clause on MyUser table having CNT.Status exactly one the raw query would be like below.
SELECT user_id from user_table GROUP BY user_id HAVING COUNT(status)=1
I tried various options using Django model API but its adding "id" too in group by clause.
Upvotes: 2
Views: 2473
Reputation: 51645
It seems you are looking for filtering on annotations:
qs = ( MyUser
.objects
.annotate(num_status=Count('status'))
.filter(num_status__gt=1)
)
Notice: I supose that status is a 1:N related model.
Upvotes: 5