0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

100日でSQLの達人になる@LeetCode! Day52 <要復習:MS SQL Serverで変数>

Posted at

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で変数を使用するとした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?