+ (Add) (Transact-SQL)
Adds two numbers. This addition arithmetic operator can also add a number, in days, to a date.
Syntax
expression + expression
Arguments
- expression
Is any valid expression of any one of the data types in the numeric category except the bit data type. Cannot be used with date, time, datetime2, or datetimeoffset data types.
Result Types
Returns the data type of the argument with the higher precedence. For more information, see Data Type Precedence (Transact-SQL).
Examples
A. Using the addition operator to calculate the total number of hours away from work for each employee.
The following example finds the total number of hours away from work for each employee by adding the number of hours taken for vacation and the number of hours taken as sick leave.
USE AdventureWorks2008R2;
GO
SELECT p.FirstName, p.LastName, VacationHours, SickLeaveHours,
VacationHours + SickLeaveHours AS 'Total Hours Away'
FROM HumanResources.Employee AS e
JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID
ORDER BY 'Total Hours Away' ASC;
GO
B. Using the addition operator to add days to date and time values
The following example adds a number of days to a datetime date.
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';
Here is the result set.
Start Date Add Date
--------------------------- ---------------------------
1900-01-11 06:00:00.000 1900-01-15 00:00:00.000
(1 row(s) affected)
C. Adding character and integer data types
The following example adds an int data type value and a character value by converting the character data type to int. If a character that is not valid exists in the char string, the SQL Server Database Engine returns an error.
DECLARE @addvalue int;
SET @addvalue = 15;
SELECT '125127' + @addvalue;
Here is the result set.
-----------------------
125142
(1 row(s) affected)