Operatori composti (Transact-SQL)

Gli operatori composti consentono di eseguire alcune operazioni e impostano un valore originale sul risultato dell'operazione. Ad esempio, se una variabile @x è uguale a 35, all'espressione @x += 2 viene assegnato il valore originale di @x, quindi viene aggiunto il valore 2 e @x viene impostata sul nuovo valore (37).

In Transact-SQL sono disponibili i seguenti operatori composti:

Operatore

Collegamento a ulteriori informazioni

Azione

+=

+= (Add EQUALS) (Transact-SQL)

Aggiunge una quantità al valore originale e imposta il valore originale sul risultato.

-=

-= (Subtract EQUALS) (Transact-SQL)

Sottrae una quantità dal valore originale e imposta il valore originale sul risultato.

*=

*= (Multiply EQUALS) (Transact-SQL)

Moltiplica una valore per una quantità e imposta il valore originale sul risultato.

/=

/= (Divide EQUALS) (Transact-SQL)

Divide un valore per una quantità e imposta il valore originale sul risultato.

%=

%= (Modulo EQUALS) (Transact-SQL)

Divide un valore per una quantità e imposta il valore originale sul modulo.

&=

&= (AND EQUALS bit per bit) (Transact-SQL)

Esegue un'operazione con AND bit per bit e imposta il valore originale sul risultato.

^=

^= (OR EQUALS esclusivo bit per bit) (Transact-SQL)

Esegue un'operazione con OR esclusivo bit per bit e imposta il valore originale sul risultato.

|=

|= (OR EQUALS bit per bit) (Transact-SQL)

Esegue un'operazione con OR bit per bit e imposta il valore originale sul risultato.

Sintassi

expression operator expression

Argomenti

  • expression
    Espressione valida di uno dei tipi di dati della categoria dei tipi numerici.

Tipi restituiti

Restituisce il tipo di dati dell'argomento con la priorità più alta. Per ulteriori informazioni, vedere Precedenza dei tipi di dati (Transact-SQL).

Osservazioni

Per ulteriori informazioni, vedere gli argomenti correlati a ogni operatore.

Esempi

Negli esempi seguenti vengono illustrate le operazioni composte.

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;