MysQL日期和时间操作

MysQL日期和时间操作,mysql,string,date,time,Mysql,String,Date,Time,我有一个215个字符的字段,第16到21个字符是030914格式的日期 我希望能够将其转换为日期,并以MySQL格式yyyy-mm-dd将其写入相邻字段 我尝试了字符串到日期的转换,但只有当日期字符用“c”括起,即倒逗号时,才会发生这种转换 因为我有超过2万条记录,这似乎是不可行的 字符22到25是1014格式的时间。这需要以时间格式写入另一个相邻字段,即hh:mm:ss 对于一个有经验的MySQL程序员来说,这只是几分钟的问题。QUERY 取数日期- 取数时间- 两者兼得- 下面是演示先发布您

我有一个215个字符的字段,第16到21个字符是030914格式的日期

我希望能够将其转换为日期,并以MySQL格式yyyy-mm-dd将其写入相邻字段

我尝试了字符串到日期的转换,但只有当日期字符用“c”括起,即倒逗号时,才会发生这种转换

因为我有超过2万条记录,这似乎是不可行的

字符22到25是1014格式的时间。这需要以时间格式写入另一个相邻字段,即hh:mm:ss

对于一个有经验的MySQL程序员来说,这只是几分钟的问题。

QUERY 取数日期-

取数时间-

两者兼得-


下面是演示

先发布您为解决问题所做的尝试。
SELECT DATE_FORMAT(
  STR_TO_DATE(SUBSTRING(your_column,16,6),"%d%m%y"),
  "%Y-%m-%d")
  FROM your_table;
SELECT DATE_FORMAT(
  STR_TO_DATE(SUBSTRING(your_column,22,4),"%h%i"),
  "%h:%i:%s")
  FROM your_table;
SELECT DATE_FORMAT(
  STR_TO_DATE(SUBSTRING(your_column,16,10),"%d%m%y%h%i"),
  "%Y-%m-%d %h:%i:%s")
  FROM your_table;