在 Sql Server 2016 中拆分字串
在 **SQL Server 2016 中,**他們最終引入了 Split 字串函式: STRING_SPLIT
引數: 它接受兩個引數
字串 :
是任何字元型別的表示式(即 nvarchar,varchar,nchar 或 char)。
分隔符 :
是任何字元型別的單個字元表示式(例如
nvarchar(1)
,varchar(1),nchar(1)
或 char(1)),用作連線字串的分隔符。
注意: 你應始終檢查表示式是否為非空字串。
例:
Select Value
From STRING_SPLIT('a|b|c','|')
在上面的例子中
String : 'a|b|c'
separator : '|'
結果:
+-----+
|Value|
+-----+
|a |
+-----+
|b |
+-----+
|c |
+-----+
如果它是一個空字串:
SELECT value
FROM STRING_SPLIT('',',')
結果:
+-----+
|Value|
+-----+
1 | |
+-----+
你可以通過新增 WHERE
子句來避免上述情況
SELECT value
FROM STRING_SPLIT('',',')
WHERE LTRIM(RTRIM(value))<>''