Utilisation de SQL Server 2000Problème de perte de valeur de temps?
requête
Select id, CONVERT(char(8), CASE WHEN DateAdd(Day, - DateDiff(Day, 0, OutTime), OutTime) > Normal_Outtime THEN Cast(Normal_Outtime AS datetime) ELSE DateAdd(Day, - DateDiff(Day, 0, OutTime), OutTime) END - CASE WHEN DateAdd(Day, - DateDiff(Day, 0, InTime), InTime) < Normal_Intime THEN Cast(Normal_Intime AS datetime) ELSE DateAdd(Day, - DateDiff(Day, 0, InTime), InTime) END - cast(totalLunchtime AS datetime), 8) ELSE '00:00:00' END AS WorkedTime
from table
de la requête ci-dessus, en faisant outtime - INTIME - totallunchtime
types de données de colonne sont varchar
Exemple
Id |Intime |Outtime |totallunchtime
001 |09:00:00 |21:00:00 |01:00:00
002 |07:00:00 |07:30:00 |01:00:00
003 |00:00:00 |00:00:00 |01:00:00
WorkedTime moyens (outti moi - INTIME - totalLunchtime)
Obtention d'une sortie comme ceci
id |workedtime
001 |11:00:00
002 |23:30:00
003 |23:00:00
Seul le problème de totallunchtime en moins 0:00:00 qu'il donne 23:00:00 et aussi pour personid 002, il donne 23:30 : 00 il devrait donner seulement 00:30:00
sortie prévue
id |workedtime
001 |11:00:00
002 |00:23:00
003 |00:00:00
ainsi de suite ...,
Besoin d'aide pour la recherche
Duplicata de http://stackoverflow.com/questions/1509508/how-to-make-total – RedFilter
Orbman. C'est pour Minus le problème de timevalue. Celui-là est différent relisez la question – Gopal
@Gopal, qu'en est-il de toutes les autres questions que vous avez posées au cours des derniers jours? Il y a eu beaucoup de questions pour que vous puissiez clarifier ce que vous demandez, avez-vous déjà clarifié ces questions, ou même accepté l'une de ces réponses? –