如何将数据库中 varchar(30)
数据类型的时间转换为日期时间,我有此示例 11:45:24 09/23/2016
,假设必须将其转换为 2016-9-23 11:45:24
。我的列名称是 due_by
。我已经搜索并尝试了不同的建议,但似乎没有一个查询成功或正确。我在 MySQL 工作台中运行它。
示例代码
SELECT convert(varchar(30),'yyyy-mm-dd hh:mm:ss', 120)
FROM csbrms.user_request;
只是希望我的 due_by 格式等于 Now() 列的格式。
最佳答案
我认为我们不能直接将其转换为现在的格式,因为它在 Sql Server 中是可能的,所以我已经尝试过这个,如果你同意的话,请看一下。
MySQL:
SELECT
CONCAT(STR_TO_DATE(
RIGHT(TRIM(due_by), 10), '%m/%d/%Y'), ' ',
STR_TO_DATE(due_by,'%h:%i:%s')) nowFormat
FROM csbrms.user_request;
SQL 服务器:
SELECT CONVERT(DATETIME, '11:45:24 09/23/2016', 120)
关于mysql - MySQL 中将 varchar 数据类型转换为 datetime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39652584/