Skip to content

Latest commit

 

History

History
94 lines (74 loc) · 4.09 KB

compound-operators-transact-sql.md

File metadata and controls

94 lines (74 loc) · 4.09 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic ms.custom helpviewer_keywords dev_langs monikerRange
Compound Operators (Transact-SQL)
Compound Operators (Transact-SQL)
rwestMSFT
randolphwest
03/14/2017
sql
t-sql
reference
ignite-2024
compound operators
compound operators, described
TSQL
=azuresqldb-current || >=sql-server-2016 || >=sql-server-linux-2017 || =azuresqldb-mi-current || =fabric

Compound Operators (Transact-SQL)

[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance Fabricsqldb]

Compound operators execute some operation and set an original value to the result of the operation. For example, if a variable @x equals 35, then @x += 2 takes the original value of @x, add 2 and sets @x to that new value (37).

[!INCLUDEtsql] provides the following compound operators:

Operator Link to more information Action
+= += (Add Assignment) (Transact-SQL) Adds some amount to the original value and sets the original value to the result.
-= -= (Subtract Assignment) (Transact-SQL) Subtracts some amount from the original value and sets the original value to the result.
*= *= (Multiply Assignment) (Transact-SQL) Multiplies by an amount and sets the original value to the result.
/= (Divide Assignment) (Transact-SQL) Divides by an amount and sets the original value to the result.
%= Modulus Assignment (Transact-SQL) Divides by an amount and sets the original value to the modulo.
&= &= (Bitwise AND Assignment) (Transact-SQL) Performs a bitwise AND and sets the original value to the result.
^= ^= (Bitwise Exclusive OR Assignment) (Transact-SQL) Performs a bitwise exclusive OR and sets the original value to the result.
|= |= (Bitwise OR Assignment) (Transact-SQL) Performs a bitwise OR and sets the original value to the result.

Syntax

expression operator expression  

Arguments

expression
Is any valid expression of any one of the data types in the numeric category.

Result Types

Returns the data type of the argument with the higher precedence. For more information, see Data Type Precedence (Transact-SQL).

Remarks

For more information, see the topics related to each operator.

Examples

The following examples demonstrate compound operations.

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;  

See Also

Operators (Transact-SQL)
Bitwise Operators (Transact-SQL)