--try
create function fun(@flag int)
returns varchar(10)
as 
begin
declare @re varchar(10)
if @flag=1
set @re='AA'
else if @flag=2
set @re='BB'
else 
set @re='CC' return @re
end

解决方案 »

  1.   

    --這樣寫就會出錯create function fun(@flag int)
    returns varchar(10)
    as 
    begin
    if @flag=1
    return('AA')
    else if @flag=2
    return('BB')
    else 
    return('CC')
    end
      

  2.   

    create function fun(@flag int)
    returns @re table(i int)
    as 
    begin
    if @flag=1
    insert into @re select 1
    else if @flag=2
    insert into @re select 2
    else 
    insert into @re select 3 return 
    end
      

  3.   

    select * from dbo.fun(1)i           
    ----------- 
    1(所影响的行数为 1 行)