Mysql 根据不同区域的dayname减去时间
我需要使用mysql查询减去时间/天 大约是周六02:00(GMT-1)到周三00:59(GMT+5) 如何使用sql查询实现这一点?结果是3天7小时1分钟 编辑:两天属于同一周 编辑:两天属于同一周Mysql 根据不同区域的dayname减去时间,mysql,sql,date,Mysql,Sql,Date,我需要使用mysql查询减去时间/天 大约是周六02:00(GMT-1)到周三00:59(GMT+5) 如何使用sql查询实现这一点?结果是3天7小时1分钟 编辑:两天属于同一周 编辑:两天属于同一周 然后,通常周三t1和周六t2之间的间隔是相同的,因为DST轮班通常在周日上午进行。最好使用固定日期。假设这项工作的日期,多亏了@symcbean,我可以让它与TIMEDIFF一起工作 SELECT TIMEDIFF(CONVERT_TZ('2012-04-15 02:00:00', '-01:00
然后,通常周三t1和周六t2之间的间隔是相同的,因为DST轮班通常在周日上午进行。最好使用固定日期。假设这项工作的日期,多亏了@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;
这似乎不起作用,如果是星期天和星期四而不是给定的几天,又会有什么不同?你说的“似乎不起作用”是什么意思?不是所有的日子都是24小时长的。它的输出为空,这是不起作用的,谢谢你提醒我DST班次我现在知道了,我知道了,我可以用timediff工作,但是你能帮我怎么得到天:小时:分钟的格式谢谢
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;