+ (Sumar) (Transact-SQL)

Suma dos números. Este operador aritmético de suma también puede sumar un número, en días, a un valor de fecha y hora.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

expression + expression

Argumentos

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

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. Utilizar el operador de suma para calcular el número total de horas que cada empleado ha dejado de trabajar

En el ejemplo siguiente se calcula el número total de horas que cada empleado ha dejado de trabajar; para ello, se suma el número de horas utilizadas como vacaciones y el número de horas utilizadas como baja por enfermedad.

USE AdventureWorks;
GO
SELECT c.FirstName, c.LastName, VacationHours, SickLeaveHours, 
    VacationHours + SickLeaveHours AS 'Total Hours Away'
FROM HumanResources.Employee AS e
    JOIN Person.Contact AS c ON e.ContactID = c.ContactID
ORDER BY 'Total Hours Away' ASC;
GO

B. Utilizar el operador de suma para sumar días a valores de fecha y hora

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

USE master;
GO
SET NOCOUNT ON
DECLARE @startdate datetime, @adddays int
SET @startdate = 'January 10, 1900 12:00 AM'
SET @adddays = 5
SET NOCOUNT OFF
SELECT @startdate + 1.25 AS 'Start Date', 
   @startdate + @adddays AS 'Add Date'

Éste es el conjunto de resultados.

Start Date Add Date

--------------------------- ---------------------------

1900-01-11 06:00:00.000 1900-01-15 00:00:00.000

(1 fila afectada)

C. Sumar tipos de datos character e integer

En el ejemplo siguiente se suma un valor de tipo de datos int y un valor de tipo character mediante la conversión del tipo de datos character a int. Si existe un carácter no válido en la cadena char, SQL Server Database Engine (Motor de base de datos de SQL Server) devuelve un error.

DECLARE @addvalue int
SET @addvalue = 15
SELECT '125127' + @addvalue

Éste es el conjunto de resultados.

-----------------------

125142

(1 fila afectada)