有一段查询返回一个table,用这个table的一个字段的值作为一个函数的参数传进去,看看每一个值传进去后这个函数的返回值是多少sql:
select tel from t1
innner join t2 on t2.NO = t1.NO
where t1.name is not nullfun:
FunAddress(
@tel varchar
)return varchar 怎样用一个脚本实现sql里的每一个tel 都执行一遍fun,并保留返回的结果集

解决方案 »

  1.   

    declare @s nvarchar(4000)
    set @s=''
    select @s=@s=','+tel --以","分隔值
    from t1
    innner join t2 on t2.NO = t1.NO
    where t1.name is not null
    set @s=stuff(@s,1,1,'')go
      

  2.   

    Create function (@NO nvarchar(50))
    returns nvarchar(1000)
    as
    begin
    declare @s nvarchar(1000) 
    set @s=''
    select @s=@s=','+tel --以","分隔值
    from t1
    innner join t2 on t2.NO = t1.NO
    where t1.name is not null and t1.No=@No
    set @s=stuff(@s,1,1,'')
    return @s
    end
    go
    用函数以NO作为条件时这样用
      

  3.   

    函数是以NO作为条件,现在这个NO能通过一个查询找出来,但是是多个值我想把每个NO值取出来放到已经写好的函数里,查看每一个NO对应的返回值是多少。这个循环取NO值并作为参数传入函数我不会写。继续请教!