使用SQL Server临时表来实现字符串合并处理

2023-05-16,,

处理的数据

CREATE TABLE tb(col1 varchar(10),col2 int)

INSERT tb SELECT 'a',1

union ALL SELECT 'a',2

union ALL SELECT 'b',1

union ALL SELECT 'b',2

union ALL SELECT 'b',3

合并处理

SELECT col1,col2=CAST(col2 as varchar(100))

INTO #t FROM tb

ORDER BY col1,col2

DECLARE @col1 varchar(10),@col2 varchar(100)

UPDATE #t SET

@col2=CASE WHEN @col1col1=col1 THEN @col2+','+col2 ELSE col2 END,

@col1col1=col1,

col2=@col2

SELECT * FROM #t

更新处理后的SQL Server临时表

col1 col2

-

a 1

a 1,2

b 1

b 1,2

b 1,2,3

*/

得到最终结果

SELECT col1,col2=MAX(col2) FROM #t GROUP BY col1

/*结果

col1 col2

-

a 1,2

b 1,2,3

*/

删除测试

DROP TABLE tb,#t

GO

Ps:

cast:将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。
语法
使用 CAST:
CAST ( expression AS data_type )

使用SQL Server临时表来实现字符串合并处理的相关教程结束。

《使用SQL Server临时表来实现字符串合并处理.doc》

下载本文的Word格式文档,以方便收藏与打印。