读书人

在sqlserver中自定义一个split方法(通

发布时间: 2012-07-31 12:33:46 作者: rapoo

在sqlserver中自定义一个split方法(通过下标获取截取的数组中数据)
在使用sqlserver数据库开发时遇到了这个问题,查询资料发现没有这样的方法,在一个朋友的帮忙下写的,跟大家分享下,希望大家能提宝贵意见,进行改进和优化

if object_id('f_split') is not null drop function f_split create function [dbo].[f_split](@SourceSql varchar(8000),@StrSeprate varchar(10),@indexof int) returns nvarchar(50)as begin declare @i as intdeclare @temp_str as nvarchar(50)set @SourceSql=rtrim(ltrim(@SourceSql))while @indexof > 0beginset @indexof = @indexof - 1set @i=charindex(@StrSeprate,@SourceSql)if @i <> 0beginset @temp_str = (left(@SourceSql,@i-1))set @SourceSql = right(@SourceSql,len(@SourceSql)-len(@temp_str)-len(@StrSeprate))endif @i = 0beginif @temp_str <> ''begin--取最后一个作为返回值set @temp_str = @SourceSqlbreakend endendreturn @temp_strendselect dbo.f_split('A:B:c',':','1');

读书人网 >SQL Server

热点推荐