- (restar) (Transact-SQL)
Resta dos números (un operador aritmético de sustracción). También puede restar un número, en días, de una fecha.
Sintaxis
expression - expression
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 tipos de datos date, time, datetime2 o datetimeoffset.
Tipos de resultado
Devuelve el tipo de datos del argumento con mayor precedencia. 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.
USE AdventureWorks2008R2;
GO
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.
USE AdventureWorks2008R2;
GO
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)