+ (加算) (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric の SQL 分析エンドポイント Microsoft Fabric のウェアハウス
2 つの値を加算します。 この加算算術演算子を使用して、日付に日数を加算することもできます。
構文
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)