+(加法)(Transact-SQL)

适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 中的 SQL 终结点 Microsoft Fabric 中的仓库 Microsoft Fabric SQL 数据库

两个数相加。 这个加法算术运算符也可以将一个以天为单位的数字加到日期中。

Transact-SQL 语法约定

语法

expression + expression  

参数

expression
数值类别中任意数据类型(bit 数据类型除外)的任何有效表达式。 不能与 date、time、datetime2 或 datetimeoffset 数据类型一起使用

结果类型

返回优先级较高的参数的数据类型。 有关详细信息,请参阅数据类型优先级 (Transact-SQL)

示例

A. 使用加法运算符计算每个雇员离岗的总小时数。

此示例通过将休假小时数和病假小时数相加来计算每个雇员离岗的总小时数。

-- 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. 使用加法运算符将天数添加到日期和时间值中

此示例将若干天添加到 datetime 日期上。

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';  

结果集如下。

Start Date                  Add Date
--------------------------- ---------------------------
1900-01-11 06:00:00.000     1900-01-15 00:00:00.000
 
(1 row(s) affected)

°C 将字符和整数数据类型相加

以下示例通过将字符数据类型转换为 int,将 int 数据类型值与字符值相加。如果 char 字符串中具有无效字符,则 Transact-SQL 返回一个错误。

DECLARE @addvalue INT;  
SET @addvalue = 15;  
SELECT '125127' + @addvalue;  

结果集如下。

-----------------------
125142
 
(1 row(s) affected)

示例:Azure Synapse Analytics 和 Analytics Platform System (PDW)

D. 使用加法运算符计算每个雇员离岗的总小时数

以下示例通过将休假小时数和病假小时数相加来计算每个雇员离岗的总小时数,并将结果按升序排列。

-- Uses AdventureWorks  
  
SELECT FirstName, LastName, VacationHours, SickLeaveHours,   
    VacationHours + SickLeaveHours AS TotalHoursAway  
FROM DimEmployee  
ORDER BY TotalHoursAway ASC;  

另请参阅

运算符 (Transact-SQL)
复合运算符 (Transact-SQL)
+=(加法赋值)(Transact-SQL)
CAST 和 CONVERT (Transact-SQL)
数据类型转换(数据库引擎)
数据类型 (Transact-SQL)
内置函数 (Transact-SQL)
SELECT (Transact-SQL)