2

我需要使用mysql查询减去时间/天;

就像星期六 (GMT-1) 的 02:00 - 星期三 (GMT+5) 的 00:59

如何使用 sql 查询执行此操作?并获得 3 天 7 小时 1 分钟的结果

编辑:两天都是同一周

4

2 回答 2

1

假设这项工作的日期,感谢@symcbean,我可以让它与 TIMEDIFF 一起工作

SELECT TIMEDIFF(CONVERT_TZ('2012-04-15 02:00:00', '-01:00', '+05:00'), '2012-04-12 00:59:00');

以及几天的小时和分钟:

SELECT CONCAT(
    FLOOR(HOUR(TIMEDIFF(CONVERT_TZ('2012-04-15 02:00:00', '-01:00', '+05:00'), '2012-04-12 00:59:00')) / 24), ' days ',
    MOD(HOUR(TIMEDIFF(CONVERT_TZ('2012-04-15 02:00:00', '-01:00', '+05:00'), '2012-04-12 00:59:00')), 24), ' hours ',
    MINUTE(TIMEDIFF(CONVERT_TZ('2012-04-15 02:00:00', '-01:00', '+05:00'), '2012-04-12 00:59:00')), ' minutes') as TIMEDIFF;
于 2012-04-11T10:08:45.413 回答
0
SELECT CONVERT_TZ('2012-04-07 02:00:00', '-01:00', '00:00')
         - CONVERT_TZ('2012-04-04 00:59:00', '05:00', '00:00')

编辑:两天都是同一周

然后通常在周三的 t1 和周六的 t2 之间的差距将是相同的,因为 DST 班次通常在周日早上应用。最好使用固定日期。

于 2012-04-11T09:04:30.813 回答