Skip to content

Latest commit

 

History

History
103 lines (81 loc) · 4.13 KB

File metadata and controls

103 lines (81 loc) · 4.13 KB
title Compound Operators (Transact-SQL) | Microsoft Docs
ms.custom
ms.date 03/14/2017
ms.prod sql-non-specified
ms.reviewer
ms.suite
ms.technology
database-engine
ms.tgt_pltfrm
ms.topic language-reference
applies_to
Azure SQL Database
SQL Server (starting with 2008)
dev_langs
TSQL
helpviewer_keywords
compound operators
compound operators, described
ms.assetid 5072fe91-02d3-42a7-831f-756eff714a17
caps.latest.revision 9
author BYHAM
ms.author rickbyh
manager jhubbard

Compound Operators (Transact-SQL)

[!INCLUDEtsql-appliesto-ss2008-asdb-xxxx-xxx_md]

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 EQUALS) (Transact-SQL) Adds some amount to the original value and sets the original value to the result.
-= -= (Subtract EQUALS) (Transact-SQL) Subtracts some amount from the original value and sets the original value to the result.
*= *= (Multiply EQUALS) (Transact-SQL) Multiplies by an amount and sets the original value to the result.
/= (Divide EQUALS) (Transact-SQL) Divides by an amount and sets the original value to the result.
%= Modulo EQUALS (Transact-SQL) Divides by an amount and sets the original value to the modulo.
&= &= (Bitwise AND EQUALS) (Transact-SQL) Performs a bitwise AND and sets the original value to the result.
^= ^= (Bitwise Exclusive OR EQUALS) (Transact-SQL) Performs a bitwise exclusive OR and sets the original value to the result.
|= |= (Bitwise OR EQUALS) (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)