MS SQL Serverで変数を使用する
前回に引き続きLeetCodeの問題はお休み。
今回のテーマは変数。これもLeetCodeの回答で時々見かけて気になっていたので今回学習しました。
前回同様にdb<>fiddleを使って、テーブルにデータを格納するクエリを書いていきます。
変数の宣言
変数を使うには、最初に変数の宣言が必要になります。
変数宣言の基本はこれ。
SQL
DECLARE @変数名 変数の型
複数の変数をまとめて宣言も可能。
SQL
DECLARE @変数名1 変数の型
,@変数名2 変数の型
,@変数名3 変数の型
このように初期値を設定して宣言することも可能。
SQL
DECLARE @変数名 変数の型 = 初期値
同様にまとめて宣言も可能。
SQL
DECLARE @変数名1 変数の型 = 初期値1
,@変数名2 変数の型 = 初期値2
,@変数名3 変数の型 = 初期値3
変数に値の代入
変数に値を代入する方法です。
SQL
SET @変数名 = 設定したい値
SELECT文を使って変数に値を代入することも可能です。
ただしこの場合は、最終レコードの値が代入されます。
一致するレコードの値が無い場合は、変数の値は変更されません。
SQL
SELECT @変数名 = カラム名1 FROM テーブル名
変数の表示
変数の内容を表示するには、
SQL
PRINT @変数名
下記が実行例です。
CREATE TABLE tbl1 (id INT) INSERT INTO tbl1 (id) VALUES(1),(2),(3),(4),(5),(6),(7),(8),(9),(10) DECLARE @var1 INT, @var2 INT = 0 PRINT @var1 PRINT @var2 PRINT '------' SET @var1=1 PRINT @var1 PRINT @var2 PRINT '------' SELECT @var2= id FROM tbl1 PRINT @var1 PRINT @var2 PRINT '------'
0
1
0
1
10
10 rows affected
db<>fiddle here
今日のポイントはMS SQL Serverで変数を使用するとした。