2017-04-27 4 views
0

In unserer Datenbank ist die Zeit in Sekunden gespeichert. Ich muss die Zeit herausziehen und in Stunden mit maximal 2 Dezimalstellen umwandeln.So konvertieren und Runden Sekunden auf Stunden in SQL-Server

Ich habe folgende Summe (CAST (vt.TIMEINSECONDS als Dezimalzahl (10,2))/3600) als AMOUNT_TAKEN

für die meist Teil es funktioniert, aber manchmal zeigt es 39,9999998 statt 40 Stunden und in Die Berichte, die ich gerade laufen lasse, verursachen Probleme. Wie kann ich es bekommen 40

Antwort

1

CAST nach dem Ergebnis zeigen Division

CAST(SUM(vt.TIMEINSECONDS)/3600.0 AS decimal(10,2)) as AMOUNT_TAKEN 
+0

Ich habe das versucht und es gab mir 35 nicht 40 – Veebster

+0

Was ist Ihr Wert von 'TIMEINZIGES'? – Squirrel

0

ich den richtigen Weg in die Runde für meine Ausgabe den Wert gefunden.

Summe (CAST (ROUND (vt.TIMEINSECONDS/60,0/60.0,2) als Dezimalzahl (6,2)))

Vielen Dank an alle, die geholfen haben.

Verwandte Themen