我有一个带有外汇刻度数据的MySQL表
pair tick_date_time price_low price_high
------- --------------------- --------- ------------
USD/JPY 20091201 00:00:00.628 86.280000 86.286000
USD/JPY 20091201 00:00:00.722 86.280000 86.289000
USD/JPY 20091201 00:00:00.741 86.281000 86.289000
USD/JPY 20091201 00:00:01.130 86.283000 86.289000
USD/JPY 20091201 00:00:01.131 86.283000 86.289000
此表中的日期/时间未采用MySQL默认格式。我使用查询来格式化数据
SELECT DATE_FORMAT(t.tick_date_time, "%Y%m%d %H:%i:%s") FROM table AS t
返回NULL
。知道我错了吗?如果可能的话,我也想提取毫秒。
答案 0 :(得分:2)
您正在寻找功能str_to_date()
,而不是date_format()
:
SELECT str_to_date(t.tick_date_time, '%Y%m%d %H:%i:%s')
date_format()
获取日期并生成一个字符串。 str_to_date()
接受一个字符串并将其转换为日期。