sqlserver2008 拆分字符串
更新時間:2009年06月05日 23:53:25 作者:
數據庫 拆分字符串
--說明:例如,將下列數據
id id_value
-----------------
1 'aa,bb'
2 'aa,bb,cc'
3 'aaa,bbb,ccc'
--轉換成以下的格式
id id_value
-----------------
1 'aa'
1 'bb'
2 'aa'
2 'bb'
2 'cc'
3 'aaa'
3 'bbb'
3 'ccc'
--代碼-------------------------------------------GO
create table ta
(
id int,
id_value varchar(30)
)
insert into ta
select 1,'aa,bb' union all
select 2,'aa,bb,cc' union all
select 3,'aaa,bbb,ccc'
select
top 4000 ix = identity(int, 1, 1)
into #tb
from sys.objects a, sys.objects b
select
id,
id_value = substring(id_value,ix,charindex(',',id_value + ',',ix) - ix)
FROM ta as A, #tb as B
WHERE SUBSTRING( ',' + id_value, ix, 1) = ','
drop table ta
drop table #tb
id id_value
-----------------
1 'aa,bb'
2 'aa,bb,cc'
3 'aaa,bbb,ccc'
--轉換成以下的格式
id id_value
-----------------
1 'aa'
1 'bb'
2 'aa'
2 'bb'
2 'cc'
3 'aaa'
3 'bbb'
3 'ccc'
--代碼-------------------------------------------GO
復制代碼 代碼如下:
create table ta
(
id int,
id_value varchar(30)
)
insert into ta
select 1,'aa,bb' union all
select 2,'aa,bb,cc' union all
select 3,'aaa,bbb,ccc'
select
top 4000 ix = identity(int, 1, 1)
into #tb
from sys.objects a, sys.objects b
select
id,
id_value = substring(id_value,ix,charindex(',',id_value + ',',ix) - ix)
FROM ta as A, #tb as B
WHERE SUBSTRING( ',' + id_value, ix, 1) = ','
drop table ta
drop table #tb
相關文章
SqlServer2008誤操作數據(delete或者update)后恢復數據的方法
這篇文章主要介紹了SqlServer2008誤刪數據(delete或者update)后恢復數據的方法,感興趣的小伙伴們可以參考一下2016-05-05
SQL Server使用一個語句塊批量插入多條記錄的三種方法
本文介紹了三種不同的方法向數據庫中一次插入多條記錄的方法,第三種方法是SQL Server2008中特有的,大家體驗一下吧。2016-05-05
SQLServer 2008 :error 40出現連接錯誤的解決方法
在與SQLServer建立連接時出現與網絡相關的或特定與實例的錯誤.未找到或無法訪問服務器.請驗證實例名稱是否正確并且SQL SERVER已配置允許遠程鏈接2013-09-09
SQL Server 2008 R2 為用戶權限分配的操作步驟
這篇文章主要介紹了SQL Server 2008 R2 為用戶權限分配的操作步驟,有時候我們不得不設置一些權限,例如禁止刪除等,那么就可以參考下面的方法2017-10-10

