【问题标题】:Query to generate map table to matrix table查询以生成映射表到矩阵表
【发布时间】:2019-10-16 09:04:22
【问题描述】:

我有一张地图

Group Task
----- -----
Admin Add
Admin Edit
Admin Delete
Admin View
User  View

我需要在矩阵表中生成它

Task    Admin   User
------  ------  ------
Add     Yes     No
Edit    Yes     No
Delete  Yes     No
View    Yes     Yes

如果有人能建议 SQL Server 如何生成此输出,将会有所帮助?

【问题讨论】:

    标签: sql sql-server tsql matrix pivot


    【解决方案1】:

    使用条件聚合:

    select
        task,
        max(case when [group] = 'Admin' then 'Yes' else 'No' end) Admin,
        max(case when [group] = 'User'  then 'Yes' else 'No' end) User
    from mytable
    group by task
    

    这是因为'Yes' > 'No'

    【讨论】:

    • 欢迎@WayneCyway!如果我的回答正确回答了您的问题,请点击绿色复选标志accept it
    • @GordonLinoff:你是对的,我更新了我的答案以返回'No'
    • @WayneCyway 。 . .那么你应该接受答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-03
    • 2021-12-03
    • 2013-05-16
    • 2017-10-16
    • 2017-04-26
    • 2014-08-06
    相关资源
    最近更新 更多