+ (Addition) (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric SQL database in Microsoft Fabric
Adds two numbers. This addition arithmetic operator can also add a number, in days, to a date.
Transact-SQL syntax conventions
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.
This 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.
-- Uses AdventureWorks
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
This example adds a number of days to a datetime
date.
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's 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 Transact-SQL returns an error.
DECLARE @addvalue INT;
SET @addvalue = 15;
SELECT '125127' + @addvalue;
Here's the result set.
-----------------------
125142
(1 row(s) affected)
Examples: Azure Synapse Analytics and Analytics Platform System (PDW)
D: 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 and sorts the results in ascending order.
-- Uses AdventureWorks
SELECT FirstName, LastName, VacationHours, SickLeaveHours,
VacationHours + SickLeaveHours AS TotalHoursAway
FROM DimEmployee
ORDER BY TotalHoursAway ASC;
See Also
Operators (Transact-SQL)
Compound Operators (Transact-SQL)
+= (Addition Assignment) (Transact-SQL)
CAST and CONVERT (Transact-SQL)
Data Type Conversion (Database Engine)
Data Types (Transact-SQL)
Built-in Functions (Transact-SQL)
SELECT (Transact-SQL)