![]() |
Datenbank: MS SQL Server • Version: 2008 • Zugriff über: SSMS
Sekunden formatieren
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
wie formatiere ich am besten Sekunden als [mm]:ss, so dass der Output wie auf dem Screenshot erscheint? habe eine 'Funktion' zusammengestrickt, welche zwar das gewünschte Ergebnis liefert aber für meinen Geschmack etwas zu lange und unübersichtlich ist.
Code:
PS: [DURATION] is vom Typ float.
SELECT [Dauer] = CASE
WHEN LEN(CAST([Dauer] AS INT) / 60) = 1 THEN CAST(REPLACE(STR(CAST([Dauer] AS INT) / 60, 2), ' ', '0') AS CHAR(2)) + ':' + CAST(REPLACE(STR(CAST([Dauer] AS INT) % 60, 2), ' ', '0') AS CHAR(2)) ELSE CAST(CAST([Dauer] AS INT) / 60 AS VARCHAR) + ':' + CAST(REPLACE(STR(CAST([Dauer] AS INT) % 60, 2), ' ', '0') AS CHAR(2)) END FROM tblX |
AW: Sekunden formatieren
Vielleicht so?
SQL-Code:
CONCAT(FORMAT([Dauer]/60, '#00'), ':', Format(CAST([Dauer] as INT) % 60, '00'))
|
AW: Sekunden formatieren
Danke. Leider kann ich Format nicht verwenden. Ist leider erst ab SQL Server 2012 verfügbar :(
Zitat:
|
AW: Sekunden formatieren
Habe noch eine einfachere Möglichkeit gefunden, doch das funktioniert nur bis @Dauer 5999, das wird als 99:59 ausgegeben.
Bei @id INT = 6000 wird es als 0*:00 angezeigt. Zitat:
|
AW: Sekunden formatieren
ich denke, so passt es:
Code:
SELECT RIGHT('0' + CONVERT(varchar(5), (@id / 60)), LEN(@id/60)) + ':' + RIGHT('0' + CONVERT(varchar(2), @id % 60), 2)
|
AW: Sekunden formatieren
Eine "Format"-Funktion wird es garantiert geben, aber eventuell heißt sie etwas anders, aber das sollte ja ein Blick in die Dokumentation klären. :stupid:
|
AW: Sekunden formatieren
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz