複合運算子 (Transact-SQL)
複合運算子會執行某項作業,然後將原始值設定為該作業的結果。例如,如果變數 @x 等於 35,則 @x += 2 會用 @x 的原始值加上 2,然後將 @x 設定為該新値 (37)。
Transact-SQL 會提供下列的複合運算子:
運算子 |
詳細資訊連結 |
動作 |
---|---|---|
+= |
將原始值加上某數,然後將原始值設為該結果。 |
|
-= |
從原始值減去某數,然後將原始值設為該結果。 |
|
*= |
乘以某數,然後將原始值設為該結果。 |
|
/= |
除以某數,然後將原始值設為該結果。 |
|
%= |
除以某數,然後將原始值設為該模數。 |
|
&= |
執行位元運算 AND,然後將原始值設為該結果。 |
|
^= |
執行位元排除 OR,然後將原始值設為該結果。 |
|
|= |
執行位元運算 OR,然後將原始值設為該結果。 |
語法
expression operator expression
備註
如需詳細資訊,請參閱與每個運算子相關的主題。
範例
下列範例將示範複合作業。
DECLARE @x1 int = 27;
SET @x1 += 2 ;
SELECT @x1 AS Added_2;
DECLARE @x2 int = 27;
SET @x2 -= 2 ;
SELECT @x2 AS Subtracted_2;
DECLARE @x3 int = 27;
SET @x3 *= 2 ;
SELECT @x3 AS Multiplied_by_2;
DECLARE @x4 int = 27;
SET @x4 /= 2 ;
SELECT @x4 AS Divided_by_2;
DECLARE @x5 int = 27;
SET @x5 %= 2 ;
SELECT @x5 AS Modulo_of_27_divided_by_2;
DECLARE @x6 int = 9;
SET @x6 &= 13 ;
SELECT @x6 AS Bitwise_AND;
DECLARE @x7 int = 27;
SET @x7 ^= 2 ;
SELECT @x7 AS Bitwise_Exclusive_OR;
DECLARE @x8 int = 27;
SET @x8 |= 2 ;
SELECT @x8 AS Bitwise_OR;