SQL 时钟位置的 DATEDIFF
SQL DATEDIFF for clock positions
我需要计算时间之间的时钟位置数(小时)。
数据库有列(Clock_At_From、Clock_To)
具有如下值:
10, 2
6, 9
我使用这个 sql 查询来获取两次之间的小时数。
SELECT DATEDIFF("h", "2005-05-05" + str(c.Clock_At_From) + ":00:00", "2005-05-05" + str(c.Clock_To) + ":00:00")
FROM [Conditions] as c
“2005-05-05”和“:00:00”只是一个占位符,我只关心时间。
这有点管用。但是当数字是:
10, 2
returns-8
如果数字为负,我需要将值加 12。我该怎么做?
使用 MS-Access
你可以这样写查询。本例写24小时
SELECT IIF(clock_to - clock_at_from < 0,
24 - (clock_at_from - clock_to),
clock_to - clock_at_from) AS diff
FROM Conditions
我需要计算时间之间的时钟位置数(小时)。
数据库有列(Clock_At_From、Clock_To)
具有如下值:
10, 2
6, 9
我使用这个 sql 查询来获取两次之间的小时数。
SELECT DATEDIFF("h", "2005-05-05" + str(c.Clock_At_From) + ":00:00", "2005-05-05" + str(c.Clock_To) + ":00:00")
FROM [Conditions] as c
“2005-05-05”和“:00:00”只是一个占位符,我只关心时间。
这有点管用。但是当数字是:
10, 2
returns-8
如果数字为负,我需要将值加 12。我该怎么做?
使用 MS-Access
你可以这样写查询。本例写24小时
SELECT IIF(clock_to - clock_at_from < 0,
24 - (clock_at_from - clock_to),
clock_to - clock_at_from) AS diff
FROM Conditions