SQL Server2005擷取字串並操作

2021-08-27 01:45:42 字數 1725 閱讀 6617

以前看過別人寫的,但是實在記不起來是怎麼寫的了,今天自己寫了乙個,在這裡標記一下

--定義須查詢的字串

declare @querystring nvarchar(1000)

--定義迴圈內擷取出來的子字串,如有字串'abc,123,中國,',迴圈內第一次擷取@temp='abd',第二次@temp='123',第三次@temp='中國'

declare @temp varchar(32)

--定義分隔符','的位置

declare @pos int

--定義擷取出來的子字串的長度

declare @len int

set @querystring='abc,123,中國,'

--charindex(分隔符,被查詢的字串,查詢起始位置),這裡是取分隔符','出現的位置

set @pos=charindex(',',@querystring,0)

while(@pos>0)

begin

--substring(被查詢的字串,起始位置,截止位置),根據分隔符的位置擷取字串

set @temp=substring(@querystring,0,@pos)

--len(子字串),取得子字串的長度

set @len=len(@temp)

--下面只是把分隔符之間的字串依次輸出,可替換成你自己的操作

select @temp

--stuff(被查詢的字串,起始位置,截止位置),把子字串從被查詢的字串中去除,第一次迴圈時把'abc,'從'abc,123,中國,'去除,這時querystring就是'123,中國,'了

set @querystring=stuff(@querystring,1,@len+1,'')

--下面是控制迴圈的條件

set @pos=charindex(',',@querystring,0)

end

--定義須查詢的字串 declare @querystring nvarchar(1000) --定義迴圈內擷取出來的子字串,如有字串'abc,123,中國,',迴圈內第一次擷取@temp='abd',第二次@temp='123',第三次@temp='中國' declare @temp varchar(32) --定義分隔符','的位置 declare @pos int --定義擷取出來的子字串的長度 declare @len int set @querystring='abc,123,中國,' --charindex(分隔符,被查詢的字串,查詢起始位置),這裡是取分隔符','出現的位置 set @pos=charindex(',',@querystring,0) while(@pos>0) begin --substring(被查詢的字串,起始位置,截止位置),根據分隔符的位置擷取字串 set @temp=substring(@querystring,0,@pos) --len(子字串),取得子字串的長度 set @len=len(@temp) --下面只是把分隔符之間的字串依次輸出,可替換成你自己的操作 select @temp --stuff(被查詢的字串,起始位置,截止位置),把子字串從被查詢的字串中去除,第一次迴圈時把'abc,'從'abc,123,中國,'去除,這時querystring就是'123,中國,'了 set @querystring=stuff(@querystring,1,@len+1,'') --下面是控制迴圈的條件 set @pos=charindex(',',@querystring,0) end

SQL Server2005擷取字串並操作

以前看過別人寫的,但是實在記不起來是怎麼寫的了,今天自己寫了乙個,在這裡標記一下 定義須查詢的字串 declare querystring nvarchar 1000 定義迴圈內擷取出來的子字串,如有字串 abc,123,中國,迴圈內第一次擷取 temp abd 第二次 temp 123 第三次 t...

SQL Server2005複製實現

一 準備工作 1 在發布伺服器上建立乙個共享目錄,作為發布快照檔案的存放目錄。例如 在d 盤根目錄下建資料夾名為pub 2 設定sql 發布伺服器和訂閱伺服器均設定 步驟 開啟服務 控制面板 管理工具 服務 右擊sqlserver agent 屬性 登入 選擇 此帳戶 輸入或選擇第一步中建立的win...

SQL Server 2005完全解除安裝

sql server 2005的解除安裝是乙個非常頭疼的問題。我曾經嘗試過直接使用 新增或刪除程式 工具解除安裝 清除安裝目錄 刪除登錄檔內容等等各種方式綜合解除安裝,勉強成功。現在終於找到了乙個事半功倍的方法,多次嘗試,未有失敗,具體如下 第一種是微軟官方提供的工具 msicuu2.exe 微軟官...