Sử dụng STR_TO_DATE ()
để chuyển đổi thời gian bắt đầu
của bạn chuỗi vào một MySQL DATETIME
:
STR_TO_DATE(starttime, '%m-%d-%Y %r')
và sau đó sử dụng TIMEDIFF ()
trừ hai lần:
select ID,NCOde,
TIMEDIFF(ifnull(EndTime,now()), STR_TO_DATE(starttime, '%m-%d-%Y %r'))
from xxx
where STR_TO_DATE(starttime,'%m-%d-%Y %r')
between '2012-05-09 00:00:00' and '2012-05-09 23:59:59'
Bạn có thể nên xem xét việc thay đổi kiểu dữ liệu của starttime
cột thành DATETIME
hoặc TIMESTAMP
. Cũng lưu ý rằng điều này giả định EndTime
đã thuộc loại dữ liệu như vậy, nếu không, bạn cũng sẽ phải thực hiện một chuyển đổi tương tự với nó.