- テーブル変数を使用する方法:
テーブル変数を宣言し、SQLの実行結果をその変数に挿入します。例えば、次のようなコードで実行結果をテーブル変数に格納できます。
DECLARE @ResultTable TABLE (
Column1 INT,
Column2 VARCHAR(50)
);
INSERT INTO @ResultTable
EXEC YourStoredProcedure;
上記の例では、YourStoredProcedure
というストアドプロシージャの実行結果が@ResultTable
というテーブル変数に格納されます。
- XMLデータ型を使用する方法:
XMLデータ型を利用して、SQLの実行結果をXML形式で変数に格納することもできます。以下はその一例です。
上記の例では、YourTable
というテーブルの特定の列をXML形式で@ResultXML
という変数に格納しています。
- カーソルを使用する方法:
カーソルを利用して、SQLの実行結果を1つずつ取得し、変数に追加することもできます。以下はその一例です。
DECLARE @Value INT;
DECLARE @ResultVariable TABLE (Value INT);
DECLARE YourCursor CURSOR FOR
SELECT Column1
FROM YourTable;
OPEN YourCursor;
FETCH NEXT FROM YourCursor INTO @Value;
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO @ResultVariable (Value)
VALUES (@Value);
FETCH NEXT FROM YourCursor INTO @Value;
END;
CLOSE YourCursor;
DEALLOCATE YourCursor;
上記の例では、YourTable
というテーブルからColumn1
の値をカーソルを使用して1つずつ取得し、@ResultVariable
というテーブル変数に格納しています。
これらの方法を使用することで、SQLの実行結果を複数の値を持つ変数に格納することができます。適切な方法を選択し、自身の要件に合わせて実装してください。