我有针对不同用户组的MenuTable的这些查询结果。 用户可以拥有更多组。因此,我想合并用户所属的同一PageID的所有组的权限。如何使用SQL Query完成此操作?
第一个结果:
UserGroupID PageID CanView CanDelete CanEdit
----------------------------------------------------------------------
1 1 0 0 0
1 2 1 1 0
1 3 1 0 0
第二个结果
UserGroupID PageID CanView CanDelete CanEdit
----------------------------------------------------------------------
2 1 1 1 1
2 2 0 0 0
2 3 0 0 0
我想得到这个结果。
PageID CanView CanDelete CanEdit
------------------------------------------------------------
1 1 1 1
2 1 1 0
3 1 0 0
答案 0 :(得分:3)
像这样的简单查询可以:
SELECT PageID,
MAX(CanView) [CanView],
MAX(CanDelete) [CanDelete],
MAX(CanEdit) [CanEdit]
FROM table
--WHERE UserGroupID in(1,2)
GROUP BY PageID
另外,如果要查看特定组(注释条件),可以使用where子句。