61 votes

combinaison des champs Date et Heure à DateTime, SQL Server 2008

Ok - J'ai demandé à quelques personnes et il doit y avoir un moyen facile de le faire...

 declare @Date date
declare @Time time 
declare @datetime datetime

select @Date = convert(Date,GetDate()) 
select @Time = convert(Time,GetDate())

select @Date, @Time, @Date + @Time (+ operator fails!)

Dois-je vraiment : 1) convertir en chaîne, puis convertir en champ datetime ? 2) utilisez DateAdd et DatePart pour ajouter d'abord les heures, puis les minutes, puis les secondes.....

78voto

Mikael Eriksson Points 77190
@Date + cast(@Time as datetime)

Dans SQL Server 2012 et je suppose que SQL Server 2014, vous devez convertir à la fois la date et la variable d'heure en datetime.

 cast(@Date as datetime) + cast(@Time as datetime)

12voto

jdavies Points 7712

Essayez d'abord de les diffuser tous les deux sur DATETIME :

 SELECT CAST(@Date AS DATETIME) + CAST(@Time AS DATETIME)

3voto

Arun Points 1853

Cela devrait fonctionner :

 select @Date, @Time, CAST(@Date AS datetime) + CAST(@Time AS datetime)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X