SQL DATEDIFF返回错误的结果

问题描述 投票:0回答:1

我的SQL查询如下,

SELECT  CAST(-1 * DATEDIFF(hour, '21-APR-2019 11:30:00 AM', '22-APR-2019 
2:15:20 PM') % 24 AS VARCHAR) 

以上查询的输出: -

-3 

预期产出: -

-2
sql sql-server date-arithmetic
1个回答
1
投票

这是因为:

DATEDIFF(hour, '21-APR-2019 11:30:00 AM', '22-APR-2019 
2:15:20 PM')

返回27而不是26。 改为:

SELECT  CAST(-1 * (DATEDIFF(minute, '21-APR-2019 11:30:00 AM', '22-APR-2019 
2:15:20 PM') / 60) % 24 AS VARCHAR)
© www.soinside.com 2019 - 2024. All rights reserved.