【问题标题】:sql calculating minutes for two dates between two timessql计算两次之间两个日期的分钟数
【发布时间】:2017-11-05 10:45:58
【问题描述】:

我有一个包含两个日期时间(StartDateTime、EndDateTime)的表,我想计算两者之间的分钟数。

现在,我知道使用 DATEDIFF() 函数来获取它,但我只想获取介于两个 TIME(0) 值之间的分钟数。

例如:

  StartDateTime     | EndDateTime         | TimeStart | TimeEnd
2017-06-01 03:00:00 | 2017-06-01 23:00:00 | 06:00:00  | 20:00:00

对于上面的例子,我会得到: DATEDIFF(minute, StartDateTime, EndDateTime) = 1200.

但是,我只想获得介于 TimeStartTimeEnd 之间的分钟数,即 840。

我怎样才能写出我的查询来得到这个?

【问题讨论】:

  • 用您正在使用的数据库标记您的问题。

标签: sql datetime time sql-server-2012 datediff


【解决方案1】:

在 SQL Server 中,DATEDIFF() 适用于时间值,因此您可以这样做:

DATEDIFF(minute, TimeStart, TimeEnd)

您可以将其作为演示运行:

select DATEDIFF(minute, cast('06:00:00' as time), cast('20:00:00' as time))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 2016-10-02
    • 2019-01-14
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多