Составные операторы (Transact-SQL)

Область применения: SQL Server (все поддерживаемые версии) База данных SQL Azure Управляемый экземпляр SQL Azure

Составные операторы выполняют определенные операции и задают исходной величине значение результата операции. Например, если переменная @x равна 35, то @x += 2 принимает исходное значение @x, прибавляет 2 и присваивает переменной @x новое значение (37).

Transact-SQL поддерживает следующие составные операторы.

Оператор Ссылка на дополнительные сведения Действие
+= += (присваивание сложения) (Transact-SQL) Добавляет некоторое значение к исходному значению и задает исходной величине значение результата.
-= –= (присваивание вычитания) (Transact-SQL) Вычитает определенное значение из исходного значения и задает исходной величине значение результата.
*= *= (присваивание умножения) (Transact-SQL) Умножает исходное значение на определенное значение и задает исходной величине значение результата.
/= (присваивание деления) (Transact-SQL) Делит исходное значение на определенное значение и задает исходной величине значение результата.
%= (присваивание модуля) (Transact-SQL) Делит исходное значение на определенное значение и задает исходной величине значение остатка от деления.
&= &= (побитовое присваивание И) (Transact-SQL) Выполняет операцию побитового И и задает исходной величине значение результата.
^= ^= (побитовое исключающее присваивание ИЛИ) (Transact-SQL) Выполняет операцию побитового исключающего ИЛИ и задает исходной величине значение результата.
|= |= (побитовое присваивание ИЛИ) (Transact-SQL) Выполняет операцию побитового исключающего И и задает исходной величине значение результата.

Синтаксис

expression operator expression  

Примечание

Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.

Аргументы

expression
Любое допустимое выражение любого типа данных числовой категории.

Типы результата

Возвращает результат типа данных аргумента с более высоким приоритетом. Дополнительные сведения см. в статье Приоритет типов данных (Transact-SQL).

Комментарии

Дополнительные сведения см. в разделах, посвященных соответствующим операторам.

Примеры

В следующих примерах демонстрируется использование составных операторов.

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;  

См. также:

Операторы (Transact-SQL)
побитовые операторы (Transact-SQL)