mysql - 如何在mysql中格式化并将varchar转换为datetime

标签 mysql datetime

<分区>

我需要将 varchar 转换为日期时间,以便找出最大值和最小值。我拥有的 varchar 格式如下:“2010 年 5 月 24 日星期一 21:24:39 +0000”,我需要转换为:“2010-05-24 21:24:39”。我正在使用 mysql 服务器。需要帮助。

最佳答案

SELECT STR_TO_DATE(Myvarchar, '%a, %d %b %Y %T') FROM table1

这会将其转换为列中的一种格式,然后您可以使用该格式运行小于和大于、最小和最大查询。您可以对其运行查询,将其保留为字符串,但它的性能当然会低于其中包含正确日期时间类型而不是 varchar 的新列。如果行数不多,您将不会注意到性能问题。

所以你最终可能会运行这个:

SELECT MAX(STR_TO_DATE(Myvarchar, '%a, %d %b %Y %T')) FROM table1

https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-date

关于mysql - 如何在mysql中格式化并将varchar转换为datetime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44386828/

相关文章:

mysql - 异常查询 - 两个表不匹配

mysql - 这个领域到底是什么?

javascript - Highchart 时间日期格式

c# - 将 float 转换为时间跨度

datetime - 将 UTC 字符串转换为时间对象

php - 向 MySQL 中插入数据

mysql - 尝试对 MySQL 值求和

mysql - 如何获得第一笔存款

mysql - 如何将两个表之间的比较记录结果插入到另一个表中?

python - 如何在 python 中比较 ISO-8601 日期