Ich bin auf der Suche nach einer Funktion, die eine Zeit erhalten würde und würde es auf die nächste/vorherige Stunde/halbe Stunde/Viertel/Minute runden.Wie man eine Zeit in T-SQL rundet
17
A
Antwort
28
Versuchen Sie, diese Funktion
CREATE FUNCTION [dbo].[RoundTime] (@Time datetime, @RoundTo float)
RETURNS datetime
AS
BEGIN
DECLARE @RoundedTime smalldatetime
DECLARE @Multiplier float
SET @Multiplier= 24.0/@RoundTo
SET @RoundedTime= ROUND(CAST(CAST(CONVERT(varchar,@Time,121) AS datetime) AS float) * @Multiplier,0)/@Multiplier
RETURN @RoundedTime
END
select dbo.roundtime('13:15',0.5)
Der 1. param wird die Zeit gerundet werden, und die zweite wird Basis auf Ihrer Liste (0,5 halbe Stunde, 1-1 Stunde, ...)
5
Sehr schön danke. Ich benutzte es, in-line bis 15 Minuten runden
convert(smalldatetime,ROUND(cast(TDatalog.Time as float) * (24/.25),0)/(24/.25)) AS RoundedTime
Verwandte Themen
- 1. Wie man eine Zeit rundet?
- 2. Wie man einen Schwimmer in F # rundet?
- 3. Wie man eine bcmath Zahl in PHP rundet/cill/flood?
- 4. Wie man eine Zahl auf eine gewählte ganze Zahl rundet
- 5. Wie man eine Dezimalzahl richtig rundet und formatiert?
- 6. Wie man die Zahl in Ruby kappt und rundet
- 7. Wie man einen Float-Wert in C# rundet?
- 8. EPPlus rundet eine große Zahl auf
- 9. Wie verwendet man Schleifen in TSQL?
- 10. Warum jQuery Werte rundet?
- 11. TSQL: Wie konvertiert man lokale Zeit in UTC? (SQL Server 2008)
- 12. Wie man nur Ecken auf einem UITableView rundet?
- 13. TSQL - Wie verwendet man eine Case-Anweisung für 2 Spalten?
- 14. TSQL CTE: Wie vermeidet man Kreisdurchlauf?
- 15. Split eine Adresse - TSQL
- 16. Wie erstellt man eine abgelaufene Zeit in Javascript?
- 17. TSQL Gruppierung nach Zeit mit Start- und Enddaten
- 18. TSQL Wie wird eine Zeichenfolge dynamisch erstellt?
- 19. Wie man ein BLOB in SQL SERVER mit TSQL aktualisiert
- 20. TSQL Wie gibt man PRINT in einer benutzerdefinierten Funktion aus?
- 21. Wie Dezimalraum in TSQL abgeschnitten?
- 22. Wie man Spalten Daten mit anderen Tabellen Daten aktualisieren TSQL
- 23. tsql Spalten in eine Tabelle zusammenführen
- 24. Wie man Zeit in Extreme Programming verwaltet?
- 25. Zeit, wie man es speichert
- 26. Wie man Build-Zeit in TDD verwaltet
- 27. Ersetzen Sie eine neue Zeile in TSQL
- 28. Dump tsql Ergebnis in eine Datei
- 29. Wie berechnet man die Zeit?
- 30. Wie konvertiert man datetime.date.today() in UTC-Zeit?
Wenn Sie 121 anstelle von 113 verwendet werden wird es richtig auch – vzczc
leider das Datumsteil erhalten, 121 anstelle von 114 – vzczc
nichts wert, die Schritten als Dezimalzahl angegeben werden Notation von einem Bruchteil einer Stunde. Wenn Sie also wollen, dass es in 5-Minuten-Intervallen gerundet wird, dann ist das 1/12 einer Stunde, also wäre @RoundTo .083. – eidylon