主页 > 知识库 > sql实现split函数的脚本

sql实现split函数的脚本

热门标签:阳光创信ai外呼获客系统助力 云南全自动外呼系统公司 智能外呼系统需要多少钱 贵州外呼回拨系统是什么 竞圣地图标注服务 卫星地图标注距离 安阳天音防封电销卡 外呼系统的话术 智能语音车载电话机器人

复制代码 代码如下:

--创建一个函数,函数中有两个参数
Create FUNCTION [dbo].[SplitToTable]
(
@SplitString nvarchar(max),--输入的字符串
@Separator nvarchar(10)=' '--分割条件
)
--返回的数据为一个表
RETURNS @SplitStringsTable TABLE
(
[id] int identity(1,1),
[value] nvarchar(max)
)
AS
BEGIN
DECLARE @CurrentIndex int;--当前索引
DECLARE @NextIndex int;--下一个索引
DECLARE @ReturnText nvarchar(max);--返回内容
SELECT @CurrentIndex=1;--设置当前索引初始值为1
--当当前索引小于字符串长度时,执行循环体
WHILE(@CurrentIndex=len(@SplitString))
BEGIN
--CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。CHARINDEX函数调用方法如下:
--CHARINDEX ( expression1 , expression2 [ , start_location ] )
-- Expression1是要到expression2中寻找的字符中,start_location是CHARINDEX函数开始在expression2中找expression1的位置。
SELECT @NextIndex=charindex(@Separator,@SplitString,@CurrentIndex);
IF(@NextIndex=0 OR @NextIndex IS NULL)
SELECT @NextIndex=len(@SplitString)+1;
--函数用法:SUBSTRING ( expression, start, length )
SELECT @ReturnText=substring(@SplitString,@CurrentIndex,@NextIndex-@CurrentIndex);
INSERT INTO @SplitStringsTable([value]) VALUES(@ReturnText);
SELECT @CurrentIndex=@NextIndex+1;
END
RETURN;
END
go
--测试函数
select * FROm dbo.SplitToTable('a,b,c,d,e,f,g', ',')

您可能感兴趣的文章:
  • 给Oracle添加split和splitstr函数的方法
  • MySQL里实现类似SPLIT的分割字符串的函数
  • SQL中实现SPLIT函数几种方法总结(必看篇)

标签:宁夏 周口 营口 鄂尔多斯 预约服务 湘潭 河源 钦州

巨人网络通讯声明:本文标题《sql实现split函数的脚本》,本文关键词  sql,实现,split,函数,的,脚本,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《sql实现split函数的脚本》相关的同类信息!
  • 本页收集关于sql实现split函数的脚本的相关信息资讯供网民参考!
  • 推荐文章