• 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)

admin

コメントを残す

メールアドレスが公開されることはありません。

lg