+ (Addition) (Transact-SQL)
Addition zweier Zahlen. Mit diesem arithmetischen Operator für die Addition kann auch eine Anzahl von Tagen zu einem Datum addiert werden.
Transact-SQL-Syntaxkonventionen
Syntax
expression + expression
Argumente
- expression
Bezeichnet jeden gültigen Ausdruck eines beliebigen Datentyps aus der numerischen Kategorie, mit Ausnahme des bit-Datentyps. Kann nicht mit dem Datentyp date, time, datetime2 oder datetimeoffset verwendet werden.
Ergebnistypen
Gibt einen Wert vom Datentyp des Arguments zurück, das in der Rangfolge höher steht. Weitere Informationen finden Sie unter Rangfolge der Datentypen (Transact-SQL).
Beispiele
A.Berechnen der Gesamtanzahl der Stunden für jeden Mitarbeiter, die nicht am Arbeitsplatz verbracht worden sind.
Im folgenden Beispiel wird die Gesamtanzahl von Stunden, die ein Mitarbeiter nicht an seinem Arbeitsplatz verbringt, durch Addieren der Urlaubs- und Krankheitstage (in Stunden) ermittelt.
USE AdventureWorks2012;
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.Verwenden des Additionsoperators, um Tage zu Datums- und Zeitwerten zu addieren
Im folgenden Beispiel wird eine Anzahl von Tagen zu einem datetime-Datum addiert.
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';
Dies ist das Resultset.
Start Date Add Date
--------------------------- ---------------------------
1900-01-11 06:00:00.000 1900-01-15 00:00:00.000
(1 row(s) affected)
C.Addieren bei Zeichen- und ganzzahligen Datentypen
Im folgenden Beispiel werden Werte vom int-Datentyp und einem Zeichendatentyp durch Konvertieren des Zeichendatentyps in int addiert. Wenn eine char-Zeichenfolge ein ungültiges Zeichen enthält, gibt SQL Server Database Engine (Datenbankmodul) einen Fehler zurück.
DECLARE @addvalue int;
SET @addvalue = 15;
SELECT '125127' + @addvalue;
Dies ist das Resultset.
-----------------------
125142
(1 row(s) affected)
Siehe auch
Verweis
Verbundoperatoren (Transact-SQL)
+= (Add EQUALS) (Transact-SQL)
CAST und CONVERT (Transact-SQL)
Integrierte Funktionen (Transact-SQL)