5 回答

TA貢獻1856條經驗 獲得超17個贊
create function getinv_name(@inv_code nvarchar(50))
RETURNS @TempTable table(inv_name nvarchar(50) ,
inv_model nvarchar(50))
AS
begin
insert into @TempTable(inv_name,inv_model)
select inv_name,inv_model from mate_inv_dict where inv_code=@inv_code
return
end
--這里需要提醒樓主的是 因為返回的是表變量 所以不能像返回變量那樣調用這個函數
--給你寫個例子吧
select * from getinv_name('100001')

TA貢獻1806條經驗 獲得超8個贊
自定義函數,采用返回一張表,那么就可以很多個值,目前我常采用這種方式,如下腳本所示:
1 2 3 4 5 | create function fun_test(@str1 varchar(20)) returns @t table(a varchar(10),b varchar(10)) begin insert into @t (a,b)values('變量1','變量2') end |

TA貢獻1864條經驗 獲得超2個贊
表中也是要參數的啊,光給表了,人家怎么知道你表里要返回什么啊~RETURN@tTABLE【(fchar(20),achar(20),bchar(6),cdatetime,dchar(4))】【】里面的是你要返回表中的參數@t是你表名的參數下面的insert你
添加回答
舉報