create table #ie_department_manager(empl_index nvarchar(10),dep_code nvarchar(200))
insert into #ie_department_manager values('656','as011')
insert into #ie_department_manager values('657','as011/as012/as013/as021/as022/as023')
insert into #ie_department_manager values('658','as011/as012/as013/as021/as022/as023/ac011/ac012/ac013/ac021/ac022/ac023')
create table #tmppersonfordep(empl_index nvarchar(10),dep_code nvarchar(20))
create table #tmppersonfordep2(empl_index nvarchar(10),dep_code nvarchar(20))
declare tmpmanager cursor for
select empl_index,dep_code from #ie_department_manager
order by dep_code
declare @empl_index nvarchar(10),@dep_code nvarchar(200),@position int,@index int
open tmpmanager
fetch next from tmpmanager
into @empl_index,@dep_code
while @@fetch_status = 0
begin
--法一:replace命令
declare @comm nvarchar(4000)
set @comm='insert into #tmppersonfordep values ('+@empl_index+',''')+''')'
--print @empl_index+'~'+@dep_code
--print @comm
execute (@comm)
--法二:charindex命令
set @position=charindex('/',@dep_code)
if right(@dep_code,1)<>'/'
begin
set @dep_code=@dep_code+'/'
set @position=charindex('/',@dep_code)
endset @index=1
while @position>0
begin
-- select @empl_index,@dep_code,substring(@dep_code,@index,@position-@index)
insert into #tmppersonfordep2 values(@empl_index,substring(@dep_code,@index,@position-@index))
set @index=@position+1
set @position=charindex('/',@dep_code,@index)
endfetch next from tmpmanager
into @empl_index,@dep_code
endselect * from #tmppersonfordep
select * from #tmppersonfordep2
close tmpmanager
deallocate tmpmanager
drop table #tmppersonfordep
drop table #tmppersonfordep2
drop table #ie_department_manager
SQL 字串拆分
有這樣乙個字串 中,國,中,人民,國,現代工業化程序,國 處理過之後變成 中,國,人民,現代工業化程序 以下是我的方法,有什麼不對的地方還請各位指點 刪除重複的字元 declare v1 nvarchar 100 declare v2 nvarchar 100 declare v3 nvarchar...
sql拆分字串
拆分字元卡 create function s id varchar 20 編號串 varchar max returns tab table id varchar 20 編號 varchar 30 begin declare ipos int,bh varchar 20 while 1 0 beg...
字串拆分成陣列 842將陣列拆分成斐波那契數列
這個 星期六要考四級,真的是花36塊錢體驗下卷子。上次去華南理工比數學競賽,沒想到成功混了乙個一等獎 首先來看看題目 給定乙個數字字串 s,比如 s 123456579 我們可以將它分成斐波那契式的序列 123,456,579 形式上,斐波那契式序列是乙個非負整數列表 f,且滿足 0 f i 2 3...