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