2012-10-23 15 views
5

Ich versuche, den Unterschied zwischen zwei Datetimes zu bekommen und es in Zeichenfolge als hh anzuzeigen: mmUnterschied zwischen Datetimes in Stunden, Min, Sekunden

q.parambyname('vstart').asdatetime:= vstart; 
q.parambyname('vend').asdatetime:= vend; 
d:= vend-vstart; 
mins:= d * 1440; 
q.ParamByName('mins').asBCD:= mins; 

derzeit die Datenbank speichert sie in Minuten

Beispiel (0,39)

Ich mag würde dann aus der Datenbank nehmen und es in den String-Format hh anzuzeigen: mm

+6

Benötigen Sie wirklich 'mins' Feld in Ihrer Datenbank? "vstart" - und "vend" -Felder enthalten bereits alle Informationen, die Sie benötigen, um die Differenz zwischen ihnen als Abfrageergebnis zurückzugeben (in dem Format, das Sie benötigen). – teran

Antwort

13

in DateUtils gibt es eine functio n MinutesBetween, die als solche verwendet werden können:

m := MinutesBetween(vend,vstart); 
yourHMStr := Format('%2.2d:%2.2d',[m div 60,m mod 60]); 
Verwandte Themen