Mysql 从date fromat中删除字母表,并保存在sql表的下一列中

Mysql 从date fromat中删除字母表,并保存在sql表的下一列中,mysql,datetime,Mysql,Datetime,我有一个带有日期格式的大表,其中包括“T”和“Z”字母。我想删除这两个字母表,并将其余日期保存在下一列中。我的桌子(tbl_entso_cdbf)看起来像: Utc |date|area_in|area_out| value | --------------------------------------------------- 2015-12-05T03:00Z |NULL| 275 | 40 | 0 | 2015-12-05T03:

我有一个带有日期格式的大表,其中包括“T”和“Z”字母。我想删除这两个字母表,并将其余日期保存在下一列中。我的桌子(tbl_entso_cdbf)看起来像:

     Utc          |date|area_in|area_out|  value  | 
---------------------------------------------------
2015-12-05T03:00Z |NULL| 275   |  40    |   0     |
2015-12-05T03:00Z |NULL| 275   |  40    |   0     |
2015-12-05T03:00Z |NULL| 275   |  40    |   0     |
2015-12-05T03:00Z |NULL| 275   |  40    |   0     |
我希望我的桌子看起来像:

    Utc           |      date      |area_in|area_out|  value  | 
---------------------------------------------------
2015-12-05T03:00Z |2015-12-05 03:00| 275   |  40    |   0     |
2015-12-05T03:00Z |2015-12-05 03:00| 275   |  40    |   0     |
2015-12-05T03:00Z |2015-12-05 03:00| 275   |  40    |   0     |
2015-12-05T03:00Z |2015-12-05 03:00| 275   |  40    |   0     |
utc列的数据类型为
VARCHAR
,日期列的数据类型为
DATETIME
。 我尝试过可用的解决方案,但都不起作用。如何编写sql查询来更改表

1) UPDATE tbl_entso_cdbf
   SET date = CONVERT(datetimeoffset, utc, 113)

2)`select convert(varchar(50), cast(utc as date), 113) from tbl_entso_cdbf`
它给了我这样的错误:
MySQL服务器版本,以便使用正确的语法near'VARCHAR(10),cast(utc作为日期时间),113)…


谢谢你的帮助

使用日期格式转换时间,然后使用它来设置/更新

UPDATE `tbl_entso_cdbf` SET `date` = DATE_FORMAT(utc, "%Y-%m-%d %H:%i");
使用将字符串转换为日期的函数:)


嗨,拉胡尔,它很好用。我尝试了各种可行的方法,但都不管用。这很好用。谢谢!谢谢你的粉丝们!我也试过你的解决办法。它工作得非常好。
UPDATE `tbl_entso_cdbf` SET `date` = STR_TO_DATE(utc, "%Y-%m-%dT%H:%iZ");