嗨我有一个大型数据库,包含100多个表。我有3个名为auth_group(id和group_name)的表,auth_permission(id和permission_name)和auth_group_permission(关联表b / w这两个表)由字段id,group_id和permission_id组成。 auth_group表中有许多组,每个auth_group也可能有许多权限。某些组可能具有与其他组相同的权限。我需要创建一个contains Group and permission, if same permissions are coming for different groups include in both the group rows
的Excel工作表。我需要创建一个返回A list of groups and their corresponding permissions grouped together
的查询。例如:
Managers : can create record
can delete record
etc.
Engineer : create data
delete data
我已经尝试了以下查询,但没有成功。
select distinct G.name, P.name from auth_group G, auth_permission P, auth_group_permission GP where G.id = GP.group_id AND P.id = GP.permission_id LIKE G.name LIKE 'BIG_RA_%'
任何想法的人?提前谢谢。
答案 0 :(得分:0)
你可以尝试这样的事情。
SELECT G.name,
GROUP_CONCAT(P.name)
FROM auth_group_permission GP
INNER JOIN auth_group G ON G.id = GP.group_id
INNER JOIN auth_permission P ON P.id = GP.permission_id
WHERE G.name LIKE 'BIG_RA_%'
GROUP BY G.name
希望这有帮助。