设为首页 加入收藏

TOP

sql处理带逗号的数据
2015-07-24 10:39:34 来源: 作者: 【 】 浏览:1
Tags:sql 处理 逗号 数据

这篇文章宗旨在于处理如何使用sql把带逗号的数据转换为表中的行以及将表中的行拼接成用逗号组成的数据。

具体代码如下功能写在注释里

?

--将有逗号的数据转换为一个表存储id加数据 
GO
DECLARE @Text VARCHAR(200)
SET @Text = 'test1,test2'
DECLARE @xml XML
SET @xml = CONVERT(XML,''+ REPLACE(@Text,',','')+'')
CREATE TABLE #TMP1
(
	iID VARCHAR(50),
	sText VARCHAR(200)
)
INSERT INTO #TMP1
SELECT NEWID(),b.value
FROM (SELECT @xml AS 'XML') a
CROSS APPLY (SELECT Tb.a.value('.','VARCHAR(200)') as value FROM  a.xml.nodes('/a') AS Tb(a)) b
SELECT * FROM #TMP1
GO
--将一个Table中某一列的数据拼成逗号分隔的形式
GO
    CREATE TABLE #TMP2
	(
		iID INT,
		sText VARCHAR(200)
	)
	INSERT INTO #TMP2( iID, sText )
	VALUES ( 1,  'test1');
	INSERT INTO #TMP2( iID, sText )
	VALUES ( 1,  'test2');
	DECLARE @TMP2RES VARCHAR(200)
	SET @TMP2RES = (SELECT sText+',' FROM #TMP2 FOR XML PATH(''))
	SET @TMP2RES = SUBSTRING(@TMP2RES,0,LEN(@TMP2RES)-1)
	SELECT @TMP2RES
GO

运行结果如图

\

\

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MSSQL示例(五)leftjoinon与wher.. 下一篇使用PL/SQLDeveloper把excel数据..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·About - Redis (2025-12-26 08:20:56)
·Redis: A Comprehens (2025-12-26 08:20:53)
·Redis - The Real-ti (2025-12-26 08:20:50)
·Bash 脚本教程——Li (2025-12-26 07:53:35)
·实战篇!Linux shell (2025-12-26 07:53:32)