我想执行一个简单的查询,如:
select *,count('id') from menu_permission group by menu_id
Run Code Online (Sandbox Code Playgroud)
在django格式中我尝试过:
MenuPermission.objects.all().values('menu_id').annotate(Count('id))
Run Code Online (Sandbox Code Playgroud)
它只选择menu_id.查询执行:
SELECT `menu_permission`.`menu_id`, COUNT(`menu_permission`.`id`) AS `id__count` FROM `menu_permission` GROUP BY `menu_permission`.`menu_id`
Run Code Online (Sandbox Code Playgroud)
但我也需要其他领域.如果我尝试:
MenuPermission.objects.all().values('id','menu_id').annotate(Count('id))
Run Code Online (Sandbox Code Playgroud)
它按条件添加'id'.
GROUP BY `menu_permission`.`id`
Run Code Online (Sandbox Code Playgroud)
结果我没有得到预期的结果.我如何通过组只获得一列所有对象?