+ (Adicionar) (Transact-SQL)
Adiciona dois números. Este operador aritmético de adição também pode adicionar um número, em dias, a um valor de data e hora.
Sintaxe
expression + expression
Argumentos
- expression
É qualquer expressão válida de qualquer um dos tipos da categoria numérica, exceto o tipo de dados bit. Não pode ser usado com tipos de dados de data ou hora.
Tipos de resultado
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 (Transact-SQL).
Exemplos
A. Usando o operador de adição para calcular o número total de horas de ausência do trabalho para cada funcionário.
O exemplo a seguir localiza o número total de horas de ausência do trabalho para cada funcionário, adicionando o número de horas usadas para férias e o número de horas usadas como ausência por doença.
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. Usando o operador de adição para somar dias a valores de data e hora
O exemplo a seguir adiciona um número de dias a uma data 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'
Conjunto de resultados.
Start Date Add Date
--------------------------- ---------------------------
1900-01-11 06:00:00.000 1900-01-15 00:00:00.000
(1 linha afetada)
C. Adicionando tipos de dados de caractere e inteiro
O exemplo a seguir adiciona um valor do tipo de dados int e um valor de caractere pela conversão do tipo de dados de caractere em int. Se um caractere que não é válido estiver na cadeia de caracteres char, o Mecanismo de Banco de Dados do SQL Server retornará um erro.
DECLARE @addvalue int
SET @addvalue = 15
SELECT '125127' + @addvalue
Conjunto de resultados.
-----------------------
125142
(1 linha afetada)