declare @sSQL nvarchar(max);
declare @sParam nvarchar(max);
declare @sOutput1 char(8);
declare @sOutput2 char(10);
set @sSQL = N'select @sDate1 = convert(char(8),getdate(),112)'
set @sSQL = @sSQL + N',@sDate2 = convert(char(10),getdate(),111)'
set @sParam = N'@sDate1 char(8) OUTPUT';
set @sParam = @sParam + N',@sDate2 char(10) OUTPUT';
execute sp_executesql @sSQL, @sParam
, @sDate1 = @sOutput1 OUTPUT
, @sDate2 = @sOutput2 OUTPUT
select @sOutput1, @sOutput2
→実行結果
20110210 2011/02/10
- クエリの結果が複数行の場合は上記の方法では最終行の値が取得される。