ホームページ >データベース >mysql チュートリアル >SQL Server ストアド プロシージャで動的 SQL から結果を取得する方法

SQL Server ストアド プロシージャで動的 SQL から結果を取得する方法

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-11 10:28:42436ブラウズ

How to Retrieve Results from Dynamic SQL in SQL Server Stored Procedures?

SQL Server ストアド プロシージャから動的 SQL 結果を取得します

ストアド プロシージャでは、動的 SQL を実行した後、通常、さらなる処理のために結果を取得する必要があります。例としては、動的 SQL クエリによって生成されるレコードの数を決定することが挙げられます。

動的 SQL の実行

提供されたコード スニペットでは、sp_executesql を使用して動的 SQL を実行し、特定の都市の顧客数を特定します。動的 SQL は @sqlCommand で表され、パラメータ @city を受け入れます。

検索結果

ストアド プロシージャの戻り値としてカウント値を取得するには、次の手順を実行します。

  1. カウント値を保持するための新しい inttype パラメータ@cnt を宣言します。
  2. 動的 SQL ステートメントを変更し、出力変数 @cntCOUNT(*) 値に設定します。
  3. 変更された動的 SQL を使用して sp_executesql を呼び出し、パラメータ リストの出力パラメータとして @cnt を指定します。

サンプルコード

<code class="language-sql">DECLARE @sqlCommand NVARCHAR(1000);
DECLARE @count INT;
DECLARE @city VARCHAR(75);
SET @city = 'New York';

SET @sqlCommand = 'SELECT @cnt=COUNT(*) FROM customers WHERE City = @city';
EXECUTE sp_executesql @sqlCommand, N'@city nvarchar(75), @cnt int OUTPUT', @city = @city, @cnt = @count OUTPUT;

SELECT @count;</code>

以上がSQL Server ストアド プロシージャで動的 SQL から結果を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。