- 09/06/2017
- 2分で読める
-
- c
- r
- M
- i
- M
-
+7
に適用されます。 SQL Server (サポートされるすべてのバージョン) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
式の値にローカル変数を設定します。
変数の割り当てには、SELECT @local_variable の代わりに SET @local_variable を使用するようお勧めします。
Transact-SQL Syntax Conventions
構文
SELECT { @local_variable { = | += | -= | *= | /= | %= | &= | ^= | |= } expression }
注意
SQL Server 2014 以前の Transact-SQL 構文を表示するには、以前のバージョンのドキュメントをご覧ください。
引数
@local_variable
値を割り当てる宣言済み変数です。
{= | += | -= | *= | /= | %= | &= | ^= |= }
左側の変数に、右側にある値を割り当てます。
複合代入演算子:
operator | action |
---|---|
= | 続く式を、変数に代入する。 |
+= | 追加と割り当て |
-= | 減算と割り当て |
*= | 乗算と割り当て |
/= | 除算と割り当て |
%= | モジュロと割り当て |
&= | Bitwise AND and assign |
^= | Bitwise XOR and assign |
|= | Bitwise OR and assign |
expression
Is any valid expression. これは、スカラー サブクエリを含みます。
Remarks
SELECT @local_variable は通常、変数に 1 つの値を返すために使用されます。 しかし、expression が列の名前であるとき、それは複数の値を返すことができます。 SELECT文が複数の値を返す場合、変数には最後に返された値が割り当てられます。
SELECT文が行を返さない場合、変数は現在の値を保持します。
1 つの SELECT 文は複数のローカル変数を初期化できます。
Note
変数の割り当てを含む SELECT 文は、通常の結果セットの取得操作を行うために使用できません。 SELECT @local_variable を使用して単一の値を返す
次の例では、変数 @var1
はその値として Generic Name
を割り当てられています。 Store
テーブルに対するクエリは、CustomerID
に指定された値がテーブル内に存在しないため、行を返しません。
これが結果セットです。
Company Name ------------------------------ Generic Name
B. SELECT @local_variable を使用して null
次の例では、サブクエリを使用して @var1
に値を代入しています。 CustomerID
に要求された値は存在しないため、サブクエリは値を返さず、変数は NULL
に設定されます。
以下は結果セットです。
Company Name ---------------------------- NULL
See Also
DECLARE @local_variable (Transact-SQL)
Expressions (Transact-SQL)
Compound Operators (Transact-SQL)
SELECT (Transact-SQL)