Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Instância Gerida do Azure SQL
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Ponto de Extremidade de Análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de Dados SQL no Microsoft Fabric
Subtrai dois números (um operador de subtração aritmética). Também pode subtrair um número, em dias, de uma data.
Transact-SQL convenções de sintaxe
Syntax
expression - expression
Arguments
expression
Qualquer expressão válida de qualquer um dos tipos de dados da categoria de tipo de dados numéricos, exceto o tipo de dados de bits . Não pode ser usado com tipos de dados date, time, datetime2 ou datetimeoffset .
Tipos de devolução
Retorna o tipo de dados do argumento com a precedência mais alta. Para obter mais informações, consulte Precedência de tipo de dados.
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. Usar subtração em uma instrução SELECT
O exemplo a seguir calcula a diferença na taxa de imposto entre o estado ou província com a taxa de imposto mais alta e o estado ou província com a taxa de imposto mais baixa.
Aplica-se a: SQL Server e Banco de Dados SQL.
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate
WHERE StateProvinceID IS NOT NULL;
GO
Você pode alterar a ordem de execução usando parênteses. Os cálculos entre parênteses são avaliados primeiro. Se os parênteses estiverem aninhados, o cálculo aninhado mais profundamente terá precedência.
B. Usar subtração de data
O exemplo a seguir subtrai vários dias de uma data datetime .
Aplica-se a: SQL Server e Banco de Dados SQL.
DECLARE @altstartdate DATETIME;
SET @altstartdate = CONVERT(DATETIME, 'January 10, 1900 3:00 AM', 101);
SELECT @altstartdate - 1.5 AS 'Subtract Date';
Aqui está o conjunto de resultados.
Subtract Date
-----------------------
1900-01-08 15:00:00.000
Exemplos: Azure Synapse Analytics and Analytics Platform System (PDW)
C. Usar subtração em uma instrução SELECT
O exemplo a seguir calcula a diferença em uma taxa básica entre o funcionário com a taxa básica mais alta e o funcionário com a menor taxa de imposto, a partir da dimEmployee tabela.
SELECT MAX(BaseRate) - MIN(BaseRate) AS BaseRateDifference
FROM DimEmployee;