SQL Serverで
・「変数を使用したSQL」を実行する方法
を記載します!
「EXECUTE」により、
「変数を使用したSQL」を実行できます!
※「EXECUTE」は「EXEC」と省略できます。
EXECUTEについて
「ストアドプロシージャ」を実行する際に使用します。
「変数を使用したSQL」の実行もできます。
「EXEC」と省略できます。
SQL
ここでは例として
・テーブル名「m_product」を変数「@tableName」に設定して
・SELECT文を実行
します
※ここでは「EXECUTE」の省略系「EXEC」を使用します。
DECLARE
@tableName VARCHAR(30)
--テーブル名を変数に設定
SET @tableName = 'm_product'
--SELECT文(シンプル)を実行
EXEC('SELECT * FROM ' + @tableName)
--SELECT文(件数取得)を実行
EXEC('SELECT COUNT(*) AS 件数 FROM ' + @tableName)
--SELECT文(WHERE句を使用)を実行
EXEC('SELECT * FROM ' + @tableName + ' WHERE id = ''001''')
実行結果
変数を使用したSQLを実行できました。
参考
「変数を使用したSQL」は
・SQL Serverが提供しているストプロ「sp_executesql」
でも実行できます。
ストプロ「sp_executesql」では
・WHERE句の条件式の値をパラメーター化
することができます。
※ここが「EXECUTE」との違いです。