如何按表的列项对表进行分组 [英] how to group the table by its column item

查看:68
本文介绍了如何按表的列项对表进行分组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我有这样的桌子



名字组

aaa A

aaa B

aaa A

aaa C



我希望得到格式为
的输出


名称ABC

aaa 2 1 1



如何得到这个,任何建议请

Hi,

I have the table like this

name group
aaa A
aaa B
aaa A
aaa C

I want to get the output in the format of

name A B C
aaa 2 1 1

how to get this ,any suggestion pls

推荐答案

使用PIVOT - UNPIVOT



使用PIVOT和UNPIVOT [ ^ ]

在SQL Server中透视数据 [ ^ ](替代方式)
Use PIVOT - UNPIVOT

Using PIVOT and UNPIVOT[^]
Pivoting data in SQL Server[^](Alternate ways)


在Soluton下面尝试...

Try below Soluton...
DECLARE @temp TABLE (NAME CHAR(3), GROUP1 CHAR(2))

INSERT INTO @temp (NAME, GROUP1)
VALUES 
     ('AAA', 'A'),     
     ('AAA', 'B'),
     ('AAA', 'A'),
     ('AAA', 'C')
 SELECT
      NAME
    , A = COUNT(CASE WHEN GROUP1 = 'A' THEN 1 END)
    , B = COUNT(CASE WHEN GROUP1 = 'B' THEN 1 END)
    , C = COUNT(CASE WHEN GROUP1 = 'C' THEN 1 END)
FROM @temp
GROUP BY NAME


可以通过数据透视表完成。

它是专为您正在搜索的目的而设计的
it can be done through pivot table.
It is designed for the purpose you are searching


这篇关于如何按表的列项对表进行分组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆