Partilhar via


% (Módulo) (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

Devolve o restante de um número dividido por outro.

Transact-SQL convenções de sintaxe

Syntax

dividend % divisor

Arguments

dividend

A expressão numérica a dividir. dividendo deve ser uma expressão válida de qualquer um dos tipos de dados nas categorias de tipo de dados inteiro e monetário ou o tipo de dados numéricos .

divisor

A expressão numérica pela qual dividir o dividendo. divisor deve ser qualquer expressão válida de qualquer um dos tipos de dados nas categorias de tipo de dados inteiro e monetário, ou o tipo de dados numéricos .

Tipos de resultados

Determinado pelos tipos de dados dos dois argumentos.

Remarks

Você pode usar o operador aritmético de módulo na lista de seleção da SELECT instrução com qualquer combinação de nomes de coluna, constantes numéricas ou qualquer expressão válida das categorias de tipo de dados inteiros e monetários ou o tipo de dados numéricos .

Examples

Os exemplos de código neste artigo usam o banco de dados de exemplo AdventureWorks2025 ou AdventureWorksDW2025, que pode ser descarregado da página inicial de Exemplos e Projetos da Comunidade do Microsoft SQL Server.

A. Exemplo básico

O exemplo a seguir divide o número 38 por 5. O resultado é 7 como a parte inteira do resultado e demonstra como o módulo retorna o restante do 3.

SELECT
    38 / 5 AS [Integer],
    38 % 5 AS [Remainder];

B. Exemplo de utilização de colunas numa tabela

O exemplo a seguir retorna o número de ID do produto, o preço unitário do produto e o módulo (restante) de dividir o preço de cada produto, convertido em um valor inteiro, no número de produtos solicitados.

SELECT TOP (100) ProductID,
    UnitPrice,
    OrderQty,
    CAST((UnitPrice) AS INT) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO

Exemplos: Azure Synapse Analytics and Analytics Platform System (PDW)

C: Exemplo básico

O exemplo a seguir mostra os resultados para o % operador ao dividir 3 por 2.

SELECT TOP(1) 3 % 2
FROM DimEmployee;

Aqui está o conjunto de resultados.

1