Tôi đang tìm một hàm sẽ nhận được một thời gian và sẽ làm tròn thời gian tới/giờ trước/nửa giờ/quý/phút tiếp theo.Làm thế nào để làm tròn thời gian trong T-SQL
17
A
Trả lời
28
Hãy thử chức năng này
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)
Các param 1 là thời gian để được làm tròn và thứ 2 sẽ được căn cứ vào danh sách của bạn (0,5 tiếng rưỡi đồng hồ, 1-một giờ, ...)
5
Cảm ơn rất tốt. Tôi đã sử dụng nó trong dòng làm tròn đến 15 phút
convert(smalldatetime,ROUND(cast(TDatalog.Time as float) * (24/.25),0)/(24/.25)) AS RoundedTime
Các vấn đề liên quan
- 1. Làm thế nào để bạn đặt thời gian và chỉ thời gian trong lịch trong Java?
- 2. Làm cách nào để làm tròn một DateTime thành Khoảng thời gian gần nhất
- 3. TSQL Thời gian tối thiểu mặc định
- 4. Làm thế nào để sử dụng vòng lặp trong TSQL?
- 5. Làm thế nào để có được dấu thời gian Unix trong MySQL từ thời gian UTC?
- 6. Làm thế nào để có được thời gian thời gian trong C#?
- 7. Làm thế nào để làm tròn dấu thời gian lên và xuống đến nửa giờ gần nhất?
- 8. Làm thế nào để làm tròn một phao trong F #?
- 9. Làm cách nào để xóa bộ đệm IN trong TSQL?
- 10. MSTest: làm thế nào để tăng thời gian thử nghiệm
- 11. Làm thế nào để làm tròn một NSNumber bằng không gian thập phân
- 12. TSQL - làm thế nào để tìm thấy nếu một cột có một char không gian (32)?
- 13. Làm thế nào để in thời gian như #inst
- 14. Làm thế nào để tạo dấu thời gian theo dõi
- 15. TSQL: Ngày GIỮA Truy vấn - Bỏ qua Thời gian
- 16. Làm thế nào để làm cho "khá làm tròn"?
- 17. Làm thế nào để chuyển đổi dấu thời gian java thành dấu thời gian php?
- 18. Làm thế nào để thêm lĩnh vực datetime với một lĩnh vực thời gian
- 19. Làm cách nào để đo thời gian trong C?
- 20. gấu trúc, python - làm thế nào để chọn thời điểm cụ thể trong chuỗi thời gian
- 21. Làm thế nào để phân biệt giữa thời gian để sống và thời gian nhàn rỗi trong ehcache
- 22. Làm cách nào để tăng thời gian chờ trong LINq2Entities?
- 23. Làm cách nào để bỏ qua thời gian trong NSDate?
- 24. Làm thế nào để làm ssh với một thời gian chờ trong một kịch bản?
- 25. làm thế nào để làm cho updateGL() thời gian thực trong QT
- 26. Làm thế nào để vẽ một vòng tròn trong suốt?
- 27. Làm thế nào để có được hình tròn trong Android
- 28. Làm cách nào để chuyển đổi thời gian epoch thành thời gian bình thường trong Perl?
- 29. Làm cách nào để tổng hợp thời gian trong Python?
- 30. Làm thế nào để có một TextView tròn
Nếu bạn sử dụng 121 ở vị trí của 113 nó sẽ nhận được datepart đúng cũng – vzczc
Xin lỗi, 121 ở vị trí của 114 – vzczc
Worth gì mà gia phải được quy định như thập phân ký hiệu của một phần của một giờ. Vì vậy, nếu bạn muốn nó được làm tròn đến khoảng 5 phút, thì đó là 1/12 của một giờ, vì vậy @RoundTo sẽ là 083. – eidylon