/******************************************************
* sqlServer字符串批量拆分函数
--原始数据
id names
----------- --------------------
1 ljy,zwg,cym
2 czg,zy
--生成的数据
id rn name
----------- ----------- ----------
1 1 ljy
1 2 zwg
1 3 cym
2 1 czg
2 2 zy
--示例1:
declare @table table(id int , names varchar(20))
insert into @table select 1, 'ljy,cym'
insert into @table select 2 , 'czg,zy'
SELECT * FROM @table
SELECT a.id,rn,b.v AS name
FROM @table AS a outer apply dbo.uf_split_string_batch(a.names)b
--示例2:
SELECT a.c_guid,b.v AS name
FROM tb_contract a
outer apply dbo.uf_split_string_batch(a.c_store_id)b
*************************************************************************/
ALTER FUNCTION [dbo].[uf_split_string_batch](@value varchar(MAX))
RETURNS @table TABLE(rn int,v varchar(MAX))
AS
BEGIN
INSERT INTO @table
SELECT b.*
FROM(SELECT CONVERT(XML , '<v>' + REPLACE(@value, ',','<
OUTER APPLY
(
SELECT rn = row_number ()OVER (ORDER BY getdate ()),t.c.value ('.' , 'varchar(max)' ) AS f
FROM a.f.nodes ('/
* sqlServer字符串批量拆分函数
--原始数据
id names
----------- --------------------
1 ljy,zwg,cym
2 czg,zy
--生成的数据
id rn name
----------- ----------- ----------
1 1 ljy
1 2 zwg
1 3 cym
2 1 czg
2 2 zy
--示例1:
declare @table table(id int , names varchar(20))
insert into @table select 1, 'ljy,cym'
insert into @table select 2 , 'czg,zy'
SELECT * FROM @table
SELECT a.id,rn,b.v AS name
FROM @table AS a outer apply dbo.uf_split_string_batch(a.names)b
--示例2:
SELECT a.c_guid,b.v AS name
FROM tb_contract a
outer apply dbo.uf_split_string_batch(a.c_store_id)b
*************************************************************************/
ALTER FUNCTION [dbo].[uf_split_string_batch](@value varchar(MAX))
RETURNS @table TABLE(rn int,v varchar(MAX))
AS
BEGIN
INSERT INTO @table
SELECT b.*
FROM(SELECT CONVERT(XML , '<v>' + REPLACE(@value, ',','<
OUTER APPLY
(
SELECT rn = row_number ()OVER (ORDER BY getdate ()),t.c.value ('.' , 'varchar(max)' ) AS f
FROM a.f.nodes ('/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。