如何在不丢失Xamp中数据的情况下将类型从varchar更改为Date

时间:2018-10-25 09:27:04

标签: mysql database xampp

我有我的sql数据库,该数据库具有一个字段日期,其类型为varchar,我想将其转换为Date,但是我在此字段中有很多记录。 请指导我如何在不丢失数据的情况下将其转换为Date类型。 看起来像是:20-10-2018 但是我想将日期列的varchar类型更改为Date。 谢谢。

1 个答案:

答案 0 :(得分:0)

您首先需要将日期字符串(varchar)转换为MySQL date format YYYY-MM-DD )。我们可以为此使用STR_TO_DATE()函数。

您的样本日期字符串( 20-10-2018 )基本上采用 dd-mm-yyyy 格式。可以使用以下格式说明符:

  • %d每月的某天,以数字值(01到31)
  • %m月名称为数字值(00到12)
  • %Y年,为4位数字

查询日期更新如下( DB Fiddle DEMO ):

UPDATE your_table_name 
SET date_column_name = STR_TO_DATE(date_column_name, '%d-%m-%Y');

现在,您可以使用Alter Table将数据类型从varchar更改为date

ALTER TABLE your_table_name 
MODIFY COLUMN date_column_name date;