create function f_gett1(@id as varchar(100)) returns varchar(1000) as begin declare @tmp varchar(1000) set @tmp='' select top 5 @tmp=@tmp+substring(c1,1,20)+'||' from t1 id where id=@id order by id desc set @tmp=left(@tmp,len(@tmp)-2) return(@tmp) end goselect id,dbo.f_gett1(id) from t2 p
--可以把语句1写成自定义函数 create function f_temp() returns varchar(8000) as begin declare @temp varchar(8000) set @tmp='' select top 5 @tmp=@tmp+substring(c1,1,20)+'||' from t1 order id where id=p.id by id desc return( left(@tmp,len(@tmp)-2) ) end goselect id,dbo.f_temp() from t2 p
returns varchar(1000)
as
begin
declare @tmp varchar(1000)
set @tmp=''
select top 5 @tmp=@tmp+substring(c1,1,20)+'||' from t1 id where id=@id order by id desc
set @tmp=left(@tmp,len(@tmp)-2)
return(@tmp)
end
goselect id,dbo.f_gett1(id) from t2 p
create function f_temp() returns varchar(8000)
as
begin
declare @temp varchar(8000)
set @tmp=''
select top 5 @tmp=@tmp+substring(c1,1,20)+'||' from t1 order id where id=p.id by id desc
return( left(@tmp,len(@tmp)-2) )
end
goselect id,dbo.f_temp() from t2 p