sql server 日期的相减 取小时数且保留最后一位


今天做报表的时候,第一次接触SqlServer 所以不知道如何查询两个日期之间相差的小时,查询网络结果如下:

1 select datediff(year, 开始日期,结束日期);     --两日期间隔年
2 select datediff(quarter, 开始日期,结束日期); --两日期间隔季
3 select datediff(month, 开始日期,结束日期); --两日期间隔月
4 select datediff(day, 开始日期,结束日期); --两日期间隔天
5 select datediff(week, 开始日期,结束日期); --两日期间隔周
6 select datediff(hour, 开始日期,结束日期); --两日期间隔小时
7 select datediff(minute, 开始日期,结束日期); --两日期间隔分
8 select datediff(second, 开始日期,结束日期); --两日期间隔秒

但是业务的需求是取两个日期之间的小时数,且保留最后一位小数,经过查找相关的资料,决定采用如下的方法

CAST(datediff(minute, trac.operate_time,mpda.operate_time)/60.0 AS decimal(9,1)) as cycleDate

  这样的话就满足了业务的需求了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM