+ (Add) (Transact-SQL)

Additionne deux nombres. Cet opérateur arithmétique d'addition peut aussi ajouter un nombre, en jours, à un type datetime.

Icône Lien de rubriqueConventions de syntaxe Transact-SQL

Syntaxe

expression + expression

Arguments

  • expression
    Toute expression valide de tout type de données de catégorie numérique, à l'exception du type de données bit. Ne peut être utilisé avec des types de données de date ou d'heure.

Types des résultats

Renvoie le type de données de l'argument possédant la priorité la plus élevée. Pour plus d'informations, consultez Priorités des types de données (Transact-SQL).

Exemples

A. Utilisation de l'opérateur d'addition pour calculer le nombre total d'heures d'absence du travail de chaque employé

L'exemple ci-après calcule le nombre total d'heures d'absence du travail de chaque employé en ajoutant le nombre d'heures de vacances et celui de congé de maladie.

USE AdventureWorks;
GO
SELECT c.FirstName, c.LastName, VacationHours, SickLeaveHours, 
    VacationHours + SickLeaveHours AS 'Total Hours Away'
FROM HumanResources.Employee AS e
    JOIN Person.Contact AS c ON e.ContactID = c.ContactID
ORDER BY 'Total Hours Away' ASC;
GO

B. Utilisation de l'opérateur d'addition pour ajouter des jours à des valeurs de date et d'heure

Cet exemple additionne un nombre de jours à une date de type datetime.

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'

Voici l'ensemble des résultats.

Date de début Date d'ajout

--------------------------- ---------------------------

1900-01-11 06:00:00.000 1900-01-15 00:00:00.000

(1 ligne(s) affectée(s))

C. Addition de types de données caractère et entier

Cet exemple additionne une valeur de type int et une valeur de type caractère en convertissant le type de données de caractères en valeur int. Si la chaîne char contient un caractère non valide, le moteur de base de données SQL Server renvoie une erreur.

DECLARE @addvalue int
SET @addvalue = 15
SELECT '125127' + @addvalue

Voici l'ensemble des résultats.

-----------------------

125142

(1 ligne(s) affectée(s))