mysql - 将 VarChar 转换为时间戳

标签 mysql varchar

我在一个 MySQL 表中有 700 万行数据。一列日期时间数据采用 varchar 格式。

数据如下所示:'2012-08-25 07:00:19 UTC'

我想将其转换为在 MySQL 中读取为时间戳。我试图用这段代码改变它:

UPDATE `work_data`
SET `time_at` = str_to_date( `time_at`, '%Y-%m-%d $H:%i:%s'UTC) 

它给我错误代码 1583。

任何人都可以建议一种优雅的方法来将表“工作数据”中的这一列数据转换为时间戳而不是 varchar 字符串吗?

最佳答案

我更改了您的 SQL。请检查一次。你的sql中的问题是$H。只需将 $H 替换为 %H

UPDATE work_data SET time_at = str_to_date( time_at, '%Y-%m-%d %H:%i:%s');

谢谢。

关于mysql - 将 VarChar 转换为时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31785958/

相关文章:

php - 收到未选择数据库的消息。 PHP,MySQL

mysql - 将一个表的属性内容复制到不同数据库中的另一个表的属性

php - 在重复条目上增加 varchar 值

types - ID 字段的数据类型(int 或 varchar)

mysql - mysql 中的 varchar 和复合主键?

sql - 列数据类型中 BYTE 和 CHAR 的区别

Mysql 触发器,从新插入设置 id

mysql - SQL查询(按多列排序)

mysql - 是 "VARCHAR(255) CHARACTER SET utf8"255 个字节或 255 个字符

mysql - 创建外键时遇到问题