SQL Server实现split函数分割字符串功能及用法示例

时间:2019-03-24
本文章向大家介绍SQL Server实现split函数分割字符串功能及用法示例,主要包括SQL Server实现split函数分割字符串功能及用法示例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了SQL Server实现split函数分割字符串功能及用法。分享给大家供大家参考,具体如下:

/*
函数名称:f_SplitToNvarchar
作用:实现split功能的函数
更新记录:
设计思路:将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

调用示例:

SELECT col FROM f_SplitToNvarchar('1,2,3,4',',');

如图所示:

希望本文所述对大家SQL Server数据库程序设计有所帮助。