从MySQL数据库显示日期如30-04-2020而不是2020-04-30?
阅读更多:MySQL 教程
问题描述
在MySQL中,日期格式通常为”YYYY-MM-DD”,但在一些业务场景下,可能需要将日期显示成”DD-MM-YYYY”的格式。本文将介绍如何在MySQL中将日期格式转换为”DD-MM-YYYY”。
解决方案
方法一:使用DATE_FORMAT函数
我们可以使用MySQL提供的DATE_FORMAT函数来将日期格式转换为我们想要的格式。下面是一个示例:
SELECT DATE_FORMAT('2020-04-30', '%d-%m-%Y');
输出结果为:
30-04-2020
在上面的SQL语句中,我们通过DATE_FORMAT函数将日期格式从”YYYY-MM-DD”转换为”DD-MM-YYYY”。
方法二:使用STR_TO_DATE函数和DATE_FORMAT函数
另一种方法是使用STR_TO_DATE函数和DATE_FORMAT函数结合使用。下面是一个示例:
SELECT DATE_FORMAT(STR_TO_DATE('30-04-2020', '%d-%m-%Y'), '%d-%m-%Y');
输出结果同样为:
30-04-2020
在上面的SQL语句中,我们首先使用STR_TO_DATE函数将日期字符串转换为日期格式,然后再使用DATE_FORMAT函数将日期格式转换为”DD-MM-YYYY”。
需要注意的是,在使用STR_TO_DATE函数时,我们需要指定日期字符串的格式。在本示例中,日期字符串的格式为”%d-%m-%Y”,其中”%d”表示日期,”%m”表示月份,”%Y”表示年份。如果日期字符串不符合指定的格式,将会返回NULL。
结论
在MySQL中,我们可以使用DATE_FORMAT函数或者STR_TO_DATE函数和DATE_FORMAT函数结合使用来将日期格式从”YYYY-MM-DD”转换为”DD-MM-YYYY”。需要注意的是,在使用STR_TO_DATE函数时,我们需要指定日期字符串的格式。
极客笔记