如何使用表列显示时间戳

时间:2015-04-15 11:56:35

标签: mysql timestamp

我是我的一个项目的新手。以前的人员将日期和时间保存在以下格式的两列中:

  • 日期:2015-04-15(日期类型)
  • 时间:04:20 PM(varchar)

现在我想将上面的列与当前日期和时间进行比较。

我尝试了以下查询,但它显示的是NULL

SELECT UNIX_TIMESTAMP(
    STR_TO_DATE('evnt_endDate Event_EndTime', '%Y-%m-%d %h:%i%p')
) 
FROM events

请任何人告诉我如何比较?

2 个答案:

答案 0 :(得分:0)

使用concat()

SELECT UNIX_TIMESTAMP(STR_TO_DATE(concat(evnt_endDate, ' ', Event_EndTime
                                        ), '%Y-%m-%d %h:%i%p')
                     ) 

答案 1 :(得分:0)

'evnt_endDate Event_EndTime'是一个字符串。您需要引用字段/列并连接它们的值,如

CONCAT(`evnt_endDate`, ' ', `Event_EndTime`)

结果查询将是

SELECT UNIX_TIMESTAMP( STR_TO_DATE( CONCAT(`evnt_endDate`, ' ', `Event_EndTime`), '%Y-%m-%d %h:%i%p') ) from events