[英]set column values equals to columnB minus columnA
I want my MySql Column 'Time' to be update as Column 'End_Time' Minus Column 'Start_Time' 我希望将MySql列“时间”更新为列“ End_Time” 减去列“ Start_Time”
Note: End_Time & Start_Time are in DATETIME format.... 注意:End_Time和Start_Time为DATETIME格式。
Thanks 谢谢
Try this method, 试试这个方法
SELECT SEC_TO_TIME(TIMESTAMPDIFF(second,Start_Time,End_Time)) --include sec
or
SELECT SEC_TO_TIME(TIMESTAMPDIFF(minute,Start_Time,End_Time)*60) --diff in minute
eg
SELECT SEC_TO_TIME(TIMESTAMPDIFF(minute,'2016-05-04 10:00:00','2016-05-04 11:29:00')*60)
Here TIMESTAMPDIFF(minute
will return the diff in minutes and mutiple it *60 to get seconds, and use SEC_TO_TIME
to convert from sec to Time. 在这里
TIMESTAMPDIFF(minute
将返回以分钟为单位的差异,并将其乘以* 60以获得秒,并使用SEC_TO_TIME
将秒转换为时间。
Use Datediff function in mysql 在MySQL中使用Datediff函数
you can use TIMESTAMPDIFF
function. 您可以使用
TIMESTAMPDIFF
函数。
SELECT TIMESTAMPDIFF(minute, '2015-06-01 13:13:55', '2015-06-03 10:15:20')
SELECT TIMESTAMPDIFF(second, '2015-06-01 13:13:55', '2015-06-03 10:15:20')
SELECT TIMESTAMPDIFF(hour, '2015-06-01 13:13:55', '2015-06-03 10:15:20')
update table
set Time = (select
to_timestamp(End_Time,'yyyy-mm-dd hh24:mi:ss') - to_timestamp(Start_Time,'yyyy-mm-dd hh24:mi:ss')
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.