存在值信息
表值函数实现:
--实现split功能 的函数 拆分 逗号分开的多个值ALTER function [dbo].[f_split](@SourceSql varchar(8000),@StrSeprate varchar(10))returns @temp table(Gid Nvarchar(4000))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
关联表结合函数 实现:
SELECT A.Gid FROM OrderDetail B CROSS APPLY dbo.f_split(B.MarketGids,',') AS A