2015-10-27 68 views
0

我有一个包含超过2000条记录和日期格式错误(mm/dd/yyy)的数据库。我需要使用mysql将其更改为dd/mm/yyy。错误的MYSQL(日期)输出

我有这样的代码: UPDATE SET wp_team_workshop_availbility AVAILABLE_DATE = DATE_FORMAT( 'AVAILABLE_DATE', '%D-%C-%Y')

但所有的i是创建一个空的字段。

+0

你对'available_date'字段有什么样的数据类型? – scaisEdge

+0

您是否将数据存储为varchar? – lad2025

+0

类型是varchar(50) –

回答

1

如果您将它存储为日期(数据类型),则它只是一个日期 - 没有格式。但是,您也不希望available_date作为带引号的字符串,它试图将字符串“available_date”转换为日期。

我的猜测是你的日期存储为一个字符串(你真的不应该)。不过,你会想要更多的东西,如:

UPDATE wp_team_workshop_availbility 
    SET available_date = DATE_FORMAT(STR_TO_DATE(available_date,'%c/%d/%Y'), '%d-%c-%y'); 

即需要将字符串转换为日期,然后将其转换回字符串。

但实际上,您应该利用此机会来更改存储,以便使用正确的数据类型。

+0

我的代码出现错误:Table'wordpress_olympicmoves。 “wp_team_workshop_availability”不存在 –

+0

@MaartenGeuns - 对不起,我没有注意到你在表名中拼写错误“可用性”。如果这是有道理的,我会改变我的答案以正确拼写错误。 –