如何将VARCHAR日期转换为标准MYSQL日期格式

问题描述 投票:-1回答:2

在我的表中,我有一整个列的日期为varchar,如下所示:2/1/2020 02:30:00(日期为m / d / yyyy)我希望将其转换为标准MySQL日期格式(yyyy-mm-dd )或可能的话,可以定制日期格式版本。如果可能的话,我也想删除时间(02:30:00)。我可以在终端上运行任何命令来将整个列或导入导入数据库从.xls转换为.sql文件格式。如果在MySQL中是不可能的话,另一件事是,PHP中可能存在一种转换或操纵所述数据的方法。谢谢。

另外,也许还有一种将时间转换为标准MySQL时间格式的方法。

我不确定如何更改我的问题,以下是一些其他数据。enter image description here

enter image description here

php mysql varchar
2个回答
1
投票

您可以直接在MySQL中进行此转换,使用STR_TO_DATE将字符串转换为STR_TO_DATE值,然后使用DATETIMEDATE提取日期和时间部分:

DATE

输出:

TIME

TIME


0
投票

使用SELECT DATE(STR_TO_DATE('2/1/2020 02:30:00', '%c/%e/%Y')) AS date, TIME(STR_TO_DATE('2/1/2020 02:30:00', '%c/%e/%Y %H:%i:%s')) AS time date time 2020-02-01 02:30:00 函数将该日期操纵为MySQL日期格式:

Demo on dbfiddle

说明:

[strtotime这会将字符串日期转换为Unix时间戳记

date这会将Unix时间戳转换为YYYY-MM-DD($db_date = "2/1/2020 02:30:00"; $new_date = date( "Y-m-d" , strtotime($db_date) ); )格式

演示:strtotime($db_date)

© www.soinside.com 2019 - 2024. All rights reserved.