Utilisez STR_TO_DATE()
pour convertir votre starttime
chaîne à un MySQL DATETIME
:
STR_TO_DATE(starttime, '%m-%d-%Y %r')
puis utilisez TIMEDIFF()
soustraire deux fois :
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'
Vous devriez probablement envisager de changer le type de données de starttime
colonne à DATETIME
ou TIMESTAMP
. Notez également que cela suppose EndTime
est déjà d'un tel type de données, sinon vous devrez également effectuer une conversion similaire avec lui aussi.