MS SQL Server2k字符串分拆与合并处理代码
2006-08-15 12:03
405 查看
-- MS SQL Server2k字符串分拆与合并处理代码
--字符串分拆处理代码
CREATE FUNCTION f_splitSTR(
@s varchar(8000), --待分拆的字符串
@split varchar(10) --数据分隔符
)RETURNS TABLE
AS
--SELECT TOP 8000 ID=IDENTITY(int,1,1) INTO dbo.tb_splitSTR --字符串分拆函数要用到的辅助表.
--FROM syscolumns a,syscolumns b
RETURN(
SELECT col=CAST(SUBSTRING(@s,ID,CHARINDEX(@split,@s+@split,ID)-ID) as varchar(100))
FROM tb_splitSTR
WHERE ID<=LEN(@s+'a')
AND CHARINDEX(@split,@split+@s,ID)=ID)
--drop table tb_splitSTR
GO
/* --利用以上函数,对某一表的字符串字段字符分拆处理代码
declare @id int,@c varchar(50)
declare k cursor for select * from id_f --字符串待分拆原始表(id int,c varchar(50))
open k
fetch next from k into @id,@c
while (@@fetch_status=0)
begin
insert into id_yf --分拆结果表(id int,c varchar(50))
select @id as id,c.* from f_splitSTR(@c,',') as c
fetch next from k into @id,@c
end
close k
deallocate k
*/
--------------------------------------------------------------------------
--字符串合并处理代码
declare @s varchar(300)
set @s=''
SELECT @s=@s+c+','
FROM [dbo].[id_h] --字符串待合并表[id int,c varchar(50)]
where id <> (select top 1 id from id_h order by id desc) order by id
select @s=@s+ c from id_h where id =(select top 1 id from id_h order by id desc)
select @s
--字符串分拆处理代码
CREATE FUNCTION f_splitSTR(
@s varchar(8000), --待分拆的字符串
@split varchar(10) --数据分隔符
)RETURNS TABLE
AS
--SELECT TOP 8000 ID=IDENTITY(int,1,1) INTO dbo.tb_splitSTR --字符串分拆函数要用到的辅助表.
--FROM syscolumns a,syscolumns b
RETURN(
SELECT col=CAST(SUBSTRING(@s,ID,CHARINDEX(@split,@s+@split,ID)-ID) as varchar(100))
FROM tb_splitSTR
WHERE ID<=LEN(@s+'a')
AND CHARINDEX(@split,@split+@s,ID)=ID)
--drop table tb_splitSTR
GO
/* --利用以上函数,对某一表的字符串字段字符分拆处理代码
declare @id int,@c varchar(50)
declare k cursor for select * from id_f --字符串待分拆原始表(id int,c varchar(50))
open k
fetch next from k into @id,@c
while (@@fetch_status=0)
begin
insert into id_yf --分拆结果表(id int,c varchar(50))
select @id as id,c.* from f_splitSTR(@c,',') as c
fetch next from k into @id,@c
end
close k
deallocate k
*/
--------------------------------------------------------------------------
--字符串合并处理代码
declare @s varchar(300)
set @s=''
SELECT @s=@s+c+','
FROM [dbo].[id_h] --字符串待合并表[id int,c varchar(50)]
where id <> (select top 1 id from id_h order by id desc) order by id
select @s=@s+ c from id_h where id =(select top 1 id from id_h order by id desc)
select @s
相关文章推荐
- MS SQL Server2k字符串分拆与合并处理代码
- NSString / NSMutableString 字符串处理,常用代码 (实例)
- 字符串合并处理
- 华为oj中级 字符串合并处理
- 字符串处理一例:删去代码中的注释
- 在PHP代码中处理JSON 格式的字符串的两种方法:
- C#程序代码:合并文件(处理中文)
- iOS 一个在UDP/TCP通信时,对16进制、10进制、NSData等数据之间的转换发送等处理的工具类库,一行代码将16进制字符串轻松转换成UDP需要的指令数据
- 华为OJ_2126_字符串合并处理
- PHP 处理字符串的几段代码
- 【字符串处理算法】字符串包含的算法设计及C代码实现【转】
- 华为机试-字符串合并处理
- 将字符串作为php代码进行处理
- php中常用字符串处理代码片段整理
- 3.2 各种字符串分拆处理函数.sql
- 字符串处理算法(五)多线程实现代码行数统计。[风林火山]
- 字符串处理算法(五)多线程实现代码行数统计。[风林火山]
- <PHP>字符串处理代码
- php中常用字符串处理代码片段整理
- PHP 处理字符串的代码片段