首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >sql server中两个日期时间的差异

sql server中两个日期时间的差异
EN

Stack Overflow用户
提问于 2010-01-22 18:22:56
回答 21查看 342.4K关注 0票数 88

在sql server中有没有办法区分两个datetime

例如,我的日期是

  1. 2010-01-22 15:29:55.090
  2. 2010-01-22 15:30:09.153

因此,结果应该是14.063 seconds

EN

回答 21

Stack Overflow用户

发布于 2010-01-22 18:30:02

关于DateDiff,需要注意的是,它计算了您通过指定为单位的边界的次数,因此如果您正在寻找精确的时间跨度,则会出现问题。例如:

代码语言:javascript
复制
select datediff (m, '20100131', '20100201')

给出的答案是1,因为它从1月到2月跨越了边界,所以即使跨度是2天,datediff也会返回值1-它跨越了1个日期边界。

代码语言:javascript
复制
select datediff(mi, '2010-01-22 15:29:55.090' , '2010-01-22 15:30:09.153')

给出值1,同样,它通过了分钟边界一次,所以即使它大约是14秒,当使用分钟作为单位时,它将作为单分钟返回。

票数 98
EN

Stack Overflow用户

发布于 2010-01-22 18:24:33

代码语言:javascript
复制
SELECT DATEDIFF (MyUnits, '2010-01-22 15:29:55.090', '2010-01-22 15:30:09.153')

基于DATEDIFF on MSDN替换"MyUnits“

票数 31
EN

Stack Overflow用户

发布于 2010-01-22 18:24:28

代码语言:javascript
复制
SELECT  DATEDIFF(day, '2010-01-22 15:29:55.090', '2010-01-22 15:30:09.153')

day替换为您想要获得差异的其他单位,如secondminute等。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2116540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档