MySQL 如何将char类型字段转换为datetime类型字段

MySQL 如何将char类型字段转换为datetime类型字段

首先,我们创建一张表。这里,我们将日期声明为char类型−

mysql> create table DemoTable1472
   -> (
   -> ShippingDate char(35)
   -> );
查询成功,受影响的行数为0,耗时0.46秒

使用插入命令向表中插入一些记录−

mysql> insert into DemoTable1472 values('12/31/2017 10:50');
查询成功,受影响的行数为1,耗时0.15秒
mysql> insert into DemoTable1472 values('01/10/2018 12:00');
查询成功,受影响的行数为1,耗时0.13秒
mysql> insert into DemoTable1472 values('03/20/2019 09:30');
查询成功,受影响的行数为1,耗时0.14秒

使用select语句显示表中的所有记录−

mysql> select * from DemoTable1472;

这将产生以下输出−

+------------------+
| ShippingDate     |
+------------------+
| 12/31/2017 10:50 |
| 01/10/2018 12:00 |
| 03/20/2019 09:30 |
+------------------+
0.00秒内返回3行结果

下面是将char类型字段转换为datetime类型字段的查询语句−

mysql> select str_to_date(replace(ShippingDate,'/',','),'%,%,% %T') from DemoTable1472;

这将产生以下输出−

+----------------------------------------------------------+
| str_to_date(replace(ShippingDate,'/',','),'%m,%d,%Y %T') |
+----------------------------------------------------------+
| 2017-12-31 10:50:00                                      |
| 2018-01-10 12:00:00                                      |
| 2019-03-20 09:30:00                                      |
+----------------------------------------------------------+
0.00秒内返回3行结果

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程