SqlServer中字串拆分仿造split功能
SqlServer中字串拆分仿造split功能
函式如下:
CREATE function [SplitString] ( @Input nvarchar(max), --要進行擷取拆分的字串/欄位 @Separator nvarchar(max)=',', --拆分規則 @RemoveEmptyEntries bit=1 ) --是否移除空字元,1移除 0保留 returns @TABLE table ( [Id] int identity(1,1), [Value] nvarchar(max) ) as begin declare @Index int, @Entry nvarchar(max) set @Index = charindex(@Separator,@Input) while (@Index>0) begin set @Entry=ltrim(rtrim(substring(@Input, 1, @Index-1))) if (@RemoveEmptyEntries=0) or (@RemoveEmptyEntries=1 and @Entry<>'') begin insert into @TABLE([Value]) Values(@Entry) end set @Input = substring(@Input, @Index+datalength(@Separator)/2, len(@Input)) set @Index = charindex(@Separator, @Input) end set @Entry=ltrim(rtrim(@Input)) if (@RemoveEmptyEntries=0) or (@RemoveEmptyEntries=1 and @Entry<>'') begin insert into @TABLE([Value]) Values(@Entry) end return END
測試:
--測試函式 declare @str1 varchar(max), @str2 varchar(max), @str3 varchar(max) set @str1 = '1,2,3' set @str2 = '1#2#3' set @str3 = '1#2#3#' select [Value] from [dbo].[SplitString](@str1, ',', 1) -- 按 , 拆分,去除空字元 select [Value] from [dbo].[SplitString](@str2, '#', 1) -- 按 # 拆分,去除空字元 select [Value] from [dbo].[SplitString](@str3, '#', 0) -- 按 # 拆分,保留空字元測試結果如下:
參考:http://www.cnblogs.com/yangyy753/archive/2011/11/23/2260618.html
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- java——split的用法(字串拆分)Java字串
- sqlserver 拆分SQLServer
- php中的chunk_split()和str_split()字串函式PHP字串函式
- SQLServer用函式實現對字串按照特定字元進行拆分SQLServer函式字串字元
- 檔案拆分命令 split 使用簡介
- Oracle vs PostgreSQL DBA(13)- 拆分(split)分割槽OracleSQL
- python split()對字串分離Python字串
- 抓取字串中的關鍵資訊神器---split()字串
- SQL 如何拆分字串中的數值後排序SQL字串排序
- Python科研武器庫 - 字串操作 - 字串分隔 split()、rsplit()Python字串
- JavaScript split() 分割字串生成陣列JavaScript字串陣列
- 在oracle中將一行字串拆分成多行Oracle字串
- mysql中substring_index類似split分組功能MySqlIndex
- Perl split字串分割函式用法指南字串函式
- mssql sqlserver 從指定字串中獲取數字的方法SQLServer字串
- mysql拆分字串做條件查詢MySql字串
- 用Java拆分字串示例和技巧 -DreamixJava字串
- 簡單在 WinUI 仿造 WPF 的 ColumnDefinition SharedSizeGroup 共享列寬功能UI
- JavaScript陣列與字串相互轉換 join、splitJavaScript陣列字串
- 解決split無法得到空字串問題字串
- SQLServer開啟CDC功能SQLServer
- PHP 每日一函式 — 字串函式 chunk_split ()PHP函式字串
- Golang 字串分割,替換和擷取 strings.SplitGolang字串
- 學習記錄1:python中replace和split對字串處理的區別Python字串
- SQLServer開啟CDC功能(2)SQLServer
- SQLServer開啟CDC功能(3)SQLServer
- 咦,Java拆分個字串都這麼講究Java字串
- SQLserver2008批次替換字串SQLServer字串
- Python科研武器庫 - 字串操作 - 路徑字串分割 os.path.split()、os.path.splitext()Python字串
- vue3.x頁面功能拆分方式Vue
- 《每日一題》842. Split Array into Fibonacci Sequence 將陣列拆分成斐波那契序列每日一題陣列
- mssql sqlserver 判斷字串大小寫的方法分享SQLServer字串
- Oracle以逗號分隔的字串拆分為多行資料Oracle字串
- C#的String.Split 分割字串用法詳解的程式碼C#字串
- SqlServer中將字串轉utf-8的函式、支援中文的UrlEncode函式SQLServer字串函式
- js中 split slice splice 的區分JS
- Python中的split()函式的用法Python函式
- 陣列拆分成單引號逗號隔開的字串陣列字串