Considérons deux dates 2010-03-18 22:30:45
et 2010-03-19 03:30:15
.... Comment obtenir le nombre d'heures et de minutes entre les deux dates dans le serveur SQL .....
@codeka a répondu avec la partie heures (de votre titre) mais dans le corps de votre question, vous avez demandé des heures et des minutes, voici donc un moyen
select DATEDIFF(hh, @date1, @date2) as Hours_Difference,
DATEDIFF(mi,DATEADD(hh,DATEDIFF(hh, @date1, @date2),@date1),@date2) as Minutes_Difference
Ce que cela fait dans la première partie est ce que @codeka a montré. Il vous donne la date datée entre les deux dates en heures complètes réelles. Le second terme du sql indique le délai en minutes entre le (première date et les heures écoulées) et la seconde date. Vous devez éliminer les heures de l'équation dans la partie minutes ou vous obtiendrez les minutes réelles entre les dates. Datediff et ses identificateurs Datepart autorisés peuvent être recherchés ici:
http://msdn.Microsoft.com/en-us/library/ms189794.aspx
Vous voulez que la fonction DE DATE :
SELECT DATEDIFF(hh, @date1, @date2)
La fonction DATEDIFF résoudra votre problème d'obtention de la différence d'heures.
vous pouvez vérifier ceci comme:
select DATEDIFF(hh, getdate()-1, GETDATE()) HoursDifference
Cela vous donnera un résultat de 24 heures
Merci