加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

如何使用CASE语句在sql server中创建数据透视查询

发布时间:2020-12-12 07:29:42 所属栏目:MsSql教程 来源:网络整理
导读:Col1仅包含X和Y. Col1 Col2X abcY pqrX pqrX mnqY cxr 我想这样做: X Y Col2Yes Yes pqrYes No abcYes No mnqNo Yes cxr 我应该写什么SQL查询? 解决方法 使用 SQL PIVOT operator的解决方案: SELECT Col2,case when X=0 then 'No' else 'Yes' end as X,cas
Col1仅包含X和Y.
Col1    Col2

X       abc

Y       pqr

X       pqr

X       mnq

Y       cxr

我想这样做:

X    Y    Col2

Yes  Yes  pqr
Yes  No   abc
Yes  No   mnq
No   Yes  cxr

我应该写什么SQL查询?

解决方法

使用 SQL PIVOT operator的解决方案:
SELECT Col2,case when X=0 then 'No' else 'Yes' end as X,case when Y=0 then 'No' else 'Yes' end as Y
FROM MyTable
PIVOT (
  count(Col1)
  FOR Col1 IN ([X],[Y])
) AS PivotTable;

运行样本:http://www.sqlfiddle.com/#!3/5856d/14

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读