我已经编写了以下内容来计算incode / outcode的持续时间,但是想知道是否有更好的计算方法。
由于TIMEDIFF()是一个特定于时间的函数,我只能用它来计算前9个字符之间的差异。然后我减去最后两个字符并将它们添加回'持续时间'。
HH:MM:SS:FF(帧为FF),帧速率为25fps。
incode = '10:00:01:00'
outcode = '10:01:05:02'
select CONCAT(SUBSTR(TIMEDIFF(outcode, incode), 1, 8), ':',
LPAD((SUBSTR(outcode, 10, 11) - SUBSTR(incode, 10, 11)), 2, 0)) as 'Duration';
持续时间应为:
00:01:04:02
MySQL版本:5.5 +
答案 0 :(得分:0)
如果您使用的是5.5.x或更高版本,则可以考虑以下内容......
SET @timecode_2 = '10:01:05:02';
SELECT SEC_TO_TIME(TIME_TO_SEC(SUBSTRING_INDEX(@timecode_2,':',3))+SUBSTRING_INDEX(@timecode_2,':',-1)*0.04) x;
输出:
x
10:01:05.0800000