2016-11-17 16 views
1

に動的なクエリ結果を保存しますか?は、私は、クエリの変数(@a)を持っている変数

一時テーブルを作成してDynamicSQLの結果を挿入しようとしましたが、xml結果をテーブルに入力できません。

+0

[FOR XML AUTO結果をSQLで変数に保存]の重複可能性があります(http://stackoverflow.com/questions/914009/saving-the-for-xml-auto-results-to-variable-in-sql ) – dlatikay

答えて

2

はあなたが必要とされる変数とテーブルを交換する必要があります。この

DECLARE @MyOutput NVARCHAR(max) = ''; 
DECLARE @MyQuery NVARCHAR(max) = 'SELECT @MyOutput = (SELECT s.name FROM sys.databases s FOR XML AUTO)' 
DECLARE @ParmDefinition NVARCHAR(500); 

SET @ParmDefinition = N'@MyOutput nvarchar(max) OUTPUT'; 

EXECUTE sp_executesql @MyQuery 
    ,@ParmDefinition 
    ,@MyOutput = @MyOutput OUTPUT; 

SELECT @MyOutput 

を試してみてください。我々に教えてください。

+0

ありがとうございます。それは働いた – Sher

0

変数を宣言して入力してください。動的なqryなし。

declare @a xml 
set @a = (
    select Field1 as [TD],Field2 as [TD] 
    from MLSFeed 
    for xml raw('tr'), elements) 

--select @a 

declare @b xml -- you asked for @b 
set @b = @a 

理由なしで動的なqryを使用しないでください。

関連する問題