DECLARE @sql nvarchar(1000),@i int,@max int,@getname nvarchar(1000)
SELECT TOP 1 @max=id_num FROM [general].[dbo].[matchCrop] ORDER BY id_num desc;
SET @i=1;
SET @sql=N'SELECT @name=CROP_NAME FROM [general].[dbo].[matchCrop] WHERE id_num=@num'
EXEC sp_executesql @sql,N'@name nvarchar(100) OUTPUT,@num nvarchar(100)',@getname OUTPUT,@num=@i
SELECT @getname;--會是'SELECT @name=CROP_NAME FROM [general].[dbo].[matchCrop] WHERE id_num=@num'的結果
說明:
對應關係為,下面顏色部分,紅色對應紅色,綠色對應綠色,所以可以透過OUTPUT將@sql的結果寫入getname中注意1:@getname是宣告在外面!