Mysql
 sql >> база данни >  >> RDS >> Mysql

извадете 2 datetime в mysql (един във формат за 24 часа и един във формат am/pm)

Използвайте STR_TO_DATE() за да конвертирате вашия starttime низ към MySQL DATETIME :

STR_TO_DATE(starttime, '%m-%d-%Y %r')

и след това използвайте TIMEDIFF() за изваждане два пъти:

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'

Вероятно трябва да помислите за промяна на типа данни на starttime колона до DATETIME или TIMESTAMP . Имайте предвид също, че това предполага EndTime вече е от такъв тип данни, в противен случай ще трябва да извършите подобно преобразуване и с него.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изберете в MySQL, където всички редове отговарят на условие

  2. PHP &MySQL:Как мога да използвам SET @rank=0; в $query=

  3. Python:предимства и недостатъци на _mysql срещу MySQLdb?

  4. Връзката с Azure MySQL сървър е неуспешна поради неправилен низ за връзка

  5. Използване на MyBatis enum