Použijte STR_TO_DATE()
převést počáteční čas
řetězec do MySQL DATETIME
:
STR_TO_DATE(starttime, '%m-%d-%Y %r')
a poté použijte TIMEDIFF()
odečíst dvakrát:
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'
Pravděpodobně byste měli zvážit změnu datového typu starttime
sloupec na DATETIME
nebo TIMESTAMP
. Všimněte si také, že to předpokládá EndTime
je již takového datového typu, jinak s ním také budete muset provést podobnou konverzi.