--这样?
create function distinct_tb
(@old varchar(50))
returns varchar(50)
as
begin
if len(ltrim(@old))=0
return ''
declare @new varchar(50),@len int
set @len=len(@old)-len(replace(@old,',',''))
set @new=''
while @len>0
begin
select @new=@new+left(@old,charindex(',',@old)),@old=replace(@old,left(@old,charindex(',',@old)),''),@len=@len-1
end
return left(@new,len(@new)-1)
end
gocreate table tb(s varchar(50))
insert into tb select '1,1,2,2,2,3,3,4,5,6,6'
insert into tb select '2,2,4,3,4'select dbo.distinct_tb(s) as 'new' from tb