Use STR_TO_DATE()
para convertir su starttime
cadena a MySQL DATETIME
:
STR_TO_DATE(starttime, '%m-%d-%Y %r')
y luego use TIMEDIFF()
para restar dos veces:
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'
Probablemente debería considerar cambiar el tipo de datos de starttime
columna a DATETIME
o TIMESTAMP
. Tenga en cuenta también que esto supone EndTime
ya es de ese tipo de datos, de lo contrario, también tendrá que realizar una conversión similar con él.