数码资讯
SQLServer:将多行分组成一行并分组统计的两种方法
复制代码代码如下所示: -创建测试表,插入数据 创建测试表(代码varchar(50),{值} varchar(10),{数量} int) 插入测试选择'001、AA,1 联盟的所有选择'001,'BB',2 联盟的所有选择'002,'AAA',4 联盟的所有选择'002,{BBB},5 联盟的所有
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
复制代码代码如下所示:
-创建测试表,插入数据
创建测试表(代码varchar(50),{值} varchar(10),{数量} int)
插入测试选择'001、AA,1
联盟的所有选择'001,'BB',2
联盟的所有选择'002,'AAA',4
联盟的所有选择'002,{BBB},5
联盟的所有选择'002,CCC,3;
方法一
-将多行合并成一行并分组统计
选择代码,
=值}
东西(B. {值}。价值( / R { 1 },'nvarchar(max)),
,
,
{,{ }
从(选择代码,和({ } })作为{计数}
从测试
按代码组分组)
交叉(适用
选择{值} =
从+测试中选择n、{}
其中的代码= a.code
XML路径(''),根(R'),类型
)
B);
方法2
在新的解决方案使用XML,SQL2005
选择代码,数据的东西((选择',' + {值}从测试T代码= t1.code XML)),1, 1,)。
从测试T1
组代码
查询结果
- 001 aa,BB 3
- 002 AAA,BBB,CCC 12
降台试验
-创建测试表,插入数据
创建测试表(代码varchar(50),{值} varchar(10),{数量} int)
插入测试选择'001、AA,1
联盟的所有选择'001,'BB',2
联盟的所有选择'002,'AAA',4
联盟的所有选择'002,{BBB},5
联盟的所有选择'002,CCC,3;
方法一
-将多行合并成一行并分组统计
选择代码,
=值}
东西(B. {值}。价值( / R { 1 },'nvarchar(max)),
,
,
{,{ }
从(选择代码,和({ } })作为{计数}
从测试
按代码组分组)
交叉(适用
选择{值} =
从+测试中选择n、{}
其中的代码= a.code
XML路径(''),根(R'),类型
)
B);
方法2
在新的解决方案使用XML,SQL2005
选择代码,数据的东西((选择',' + {值}从测试T代码= t1.code XML)),1, 1,)。
从测试T1
组代码
查询结果
- 001 aa,BB 3
- 002 AAA,BBB,CCC 12
降台试验
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。