我有一个表,其中的日期(不幸的是(是以varchar的形式输入的。例如,我的varchar日期为2012年6月1日。如何将其转换为yyyy-mm-dd格式?我尝试过alter表、str_to_date和convert,但都失败了。我在MySQL工作-谢谢!singh.rbir回答了我的问题,谢谢!在此处输入图像描述
假设它是SQL Server,正常的转换函数应该可以工作:
SELECT CONVERT(date, '01-Jun-2012');
将导致:
2012-06-01
顺便说一句,在该图像中显示生产级别的数据库和其他表不是一个好主意。如果这是一个现实世界/商业应用程序,尽管由于可用信息有限,安全风险很低,但仍然不建议公开表名等。
由于它被标记为mysql,这将在中工作
SELECT DATE_FORMAT(STR_TO_DATE('01-Jun-2012','%d-%b-%Y'),'%Y-%m-%d');
第二个参数是这里解释的格式字符串