[英]set column values equals to columnB minus columnA
我希望將MySql列“時間”更新為列“ End_Time” 減去列“ Start_Time”
注意:End_Time和Start_Time為DATETIME格式。
謝謝
試試這個方法
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)
在這里TIMESTAMPDIFF(minute
將返回以分鍾為單位的差異,並將其乘以* 60以獲得秒,並使用SEC_TO_TIME
將秒轉換為時間。
在MySQL中使用Datediff函數
您可以使用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.