Modulo (Transact-SQL)
Viene restituito il resto di una divisione.
Si applica a: SQL Server (SQL Server 2008 tramite versione corrente), Database SQL di Windows Azure (versione iniziale tramite versione corrente). |
Convenzioni della sintassi Transact-SQL
Sintassi
dividend % divisor
Argomenti
dividend
Espressione numerica da dividere. dividend deve essere un'espressione valida di uno dei tipi di dati presenti per le categorie di interi e di valuta o del tipo di dati numeric.divisor
Espressione numerica per cui dividere il dividendo. divisor deve essere un'espressione valida di uno dei tipi di dati per le categorie di interi e di valuta o del tipo di dati numeric.
Tipi restituiti
Dipendenti dai tipi di dati dei due argomenti.
Osservazioni
L'operatore aritmetico modulo può essere utilizzato nell'elenco di selezione dell'istruzione SELECT con una qualsiasi combinazione di nomi di colonna, costanti numeriche o qualsiasi espressione valida delle categorie di tipi di dati integer e monetary o del tipo di dati numeric.
Esempi
A.Esempio semplice
Nell'esempio seguente viene diviso il numero 38 per 5. Viene restituito 7 come parte intera del risultato e viene illustrata la restituzione del resto di 3 da parte del modulo.
SELECT 38 / 5 AS Integer, 38 % 5 AS Remainder ;
B.Esempio di utilizzo di colonne in una tabella
Nell'esempio seguente viene restituito il numero di serie del prodotto, il prezzo unitario del prodotto e il modulo (resto) della divisione tra il prezzo di ogni prodotto convertito in un valore intero e il numero di prodotti ordinati.
USE AdventureWorks2012;
GO
SELECT TOP(100)ProductID, UnitPrice, OrderQty,
CAST((UnitPrice) AS int) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO