本文實例講述了SQL Server實現(xiàn)split函數(shù)分割字符串功能及用法。分享給大家供大家參考,具體如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
/* 函數(shù)名稱:f_SplitToNvarchar 作用:實現(xiàn)split功能的函數(shù) 更新記錄: 設計思路:將nvarchar類型字符結合的一個串,分隔到一張只有一列nvarchar類型的表里 */ CREATE FUNCTION [dbo].[f_SplitToNvarchar] ( @SourceSql NVARCHAR( MAX ), --源分隔字符串 @StrSeprate VARCHAR (10) --分隔符 ) RETURNS @ temp TABLE (col NVARCHAR( MAX )) AS BEGIN DECLARE @i INT SET @SourceSql = RTRIM(LTRIM(@SourceSql)) SET @i = CHARINDEX(@StrSeprate, @SourceSql) WHILE @i >= 1 BEGIN INSERT @ temp VALUES ( LEFT (@SourceSql, @i -1) ) SET @SourceSql = SUBSTRING (@SourceSql, @i + 1, LEN(@SourceSql) -@i) SET @i = CHARINDEX(@StrSeprate, @SourceSql) END IF @SourceSql <> '\' INSERT @ temp VALUES ( @SourceSql ) RETURN END GO |
調(diào)用示例:
1
|
SELECT col FROM f_SplitToNvarchar( '1,2,3,4' , ',' ); |
如圖所示:
希望本文所述對大家SQL Server數(shù)據(jù)庫程序設計有所幫助。