% (Módulo) (Transact-SQL)
Retorna o restante de um número dividido por outro.
Sintaxe
dividend % divisor
Argumentos
dividend
É a expressão numérica a ser dividida. dividend deve ser uma expressão válida de uma categoria de tipo de dados ou o tipo de dados numeric.divisor
É a expressão numérica que divide o dividendo. divisor deve ser qualquer expressão de qualquer tipo de dados nas categorias de tipo de dados inteiros e monetários ou o tipo de dados numeric.
Tipos de resultado
Determinado por tipos de dados dos dois argumentos.
Comentários
O operador aritmético de módulo pode ser usado na lista de seleção da instrução SELECT com qualquer combinação de nomes de coluna, constantes numéricas ou qualquer expressão válida das categorias de tipo de dados inteiros ou monetários ou o tipo de dados numeric.
Exemplos
A. Exemplo simples
O exemplo a seguir divide o número 38 por 5. Isto resulta em 7 como a parte inteira do resultado e demonstra como o módulo retorna o resto de 3.
SELECT 38 / 5 AS Integer, 38 % 5 AS Remainder ;
B. Exemplo usando colunas em uma tabela
O exemplo a seguir retorna o número da ID de produto, o preço unitário do produto e o módulo (resto) da divisão do preço de cada produto, convertido em um valor inteiro, pelo número de produtos ordenados.
USE AdventureWorks;
GO
SELECT TOP(100)ProductID, UnitPrice, OrderQty,
CAST((UnitPrice) AS int) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO