- (Resta) (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de análisis SQL en Microsoft FabricAlmacenamiento en Microsoft Fabric

Resta dos números (un operador aritmético de sustracción). También puede restar un número, en días, de una fecha.

Convenciones de sintaxis de Transact-SQL

Sintaxis

expression - expression  

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

expression
Es cualquier expresión válida de cualquiera de los tipos de datos de la categoría de tipos de datos numéricos, excepto el tipo de datos bit. No se puede usar con los tipos de datos date, time, datetime2 o datetimeoffset.

Tipos de resultado

Devuelve el tipo de datos del argumento con mayor prioridad. Para obtener más información, vea Prioridad de tipo de datos (Transact-SQL).

Ejemplos

A. Usar la resta en una instrucción SELECT

El ejemplo siguiente calcula la diferencia de tasa impositiva entre el estado o provincia con la tasa impositiva más alta y el que tiene la tasa impositiva más baja.

Se aplica a: SQL Server y SQL Database.

-- Uses AdventureWorks  
  
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'  
FROM Sales.SalesTaxRate  
WHERE StateProvinceID IS NOT NULL;  
GO  

Puede cambiar el orden de ejecución utilizando paréntesis. Se evalúan primero los cálculos del interior de los paréntesis. Si los paréntesis están anidados, tiene precedencia el cálculo más anidado.

B. Usar la resta en una fecha

En el ejemplo siguiente se resta un número de días de una fecha datetime.

Se aplica a: SQL Server y a SQL Database.

-- Uses the AdventureWorks sample database
DECLARE @altstartdate DATETIME;  
SET @altstartdate = CONVERT(DATETIME, 'January 10, 1900 3:00 AM', 101);  
SELECT @altstartdate - 1.5 AS 'Subtract Date';  

El conjunto de resultados es:

Subtract Date  
-----------------------  
1900-01-08 15:00:00.000  

(1 row(s) affected)

Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)

C. Usar la resta en una instrucción SELECT

En el siguiente ejemplo se calcula la diferencia de tasa base entre el empleado con la tasa base más alta y el que tiene la tasa base más baja en la tabla dimEmployee.

-- Uses AdventureWorks  
  
SELECT MAX(BaseRate) - MIN(BaseRate) AS BaseRateDifference  
FROM DimEmployee;  

Consulte también

-= (Asignación de resta) (Transact-SQL)
Operadores compuestos (Transact-SQL)
Operadores aritméticos (Transact-SQL)
- (valor negativo) (Transact-SQL)
Tipos de datos (Transact-SQL)
Expresiones (Transact-SQL)
Funciones integradas (Transact-SQL)
SELECT (Transact-SQL)