MySQL中DATE_FORMAT()函数是将DATE类型字段格式化为指定的日期格式。它的语法如下:
DATE_FORMAT(date,format)
其中,date
是日期值,format
是指定的格式化字符串。下面是几个常用的日期格式化代码:
代码 | 说明 |
---|---|
%Y | 年(4位数字) |
%m | 月(01~12) |
%d | 日(01~31) |
%H | 小时(00~23) |
%i | 分钟(00~59) |
%s | 秒(00~59) |
%W | 星期全名 |
%w | 星期数字(0~6) |
%M | 月份全名 |
接下来,我将分两条示例说明如何使用DATE_FORMAT()函数将DATE类型字段格式化为指定的字符串。
示例一
假设我们有一个表user
,其中包含一个名为birthday
的DATE类型字段,存储用户的生日。我们希望将生日字段格式化为YYYY年m月d日
的字符串格式。可以这样做:
SELECT name, DATE_FORMAT(birthday,'%Y年%m月%d日') AS birthday_str
FROM user
上述SQL语句中,我们使用了DATE_FORMAT()函数,将生日字段格式化为%Y年%m月%d日
这个字符串形式。运行结果如下:
+-------+-------------+
| name | birthday_str|
+-------+-------------+
| 张三 | 1990年05月01日|
| 李四 | 1988年09月12日|
| 王五 | 1995年12月25日|
+-------+-------------+
结果中,birthday_str
列是我们格式化后的字符串形式。
示例二
假设我们有一个表product
,其中包含一个名为sale_time
的DATE类型字段,存储商品的销售时间。我们希望根据销售时间统计每个月的销售量。可以这样做:
SELECT DATE_FORMAT(sale_time,'%Y-%m') AS month, COUNT(*) AS sales_num
FROM product
GROUP BY month
上述SQL语句中,我们使用了DATE_FORMAT()函数,将销售时间字段格式化为%Y-%m
这个字符串形式,即表示年月的形式。然后,我们使用GROUP BY语句按照月份分组,统计每个月的销售量。运行结果如下:
+---------+---------+
| month | sales_num|
+---------+---------+
| 2019-01 | 50 |
| 2019-02 | 80 |
| 2019-03 | 60 |
+---------+---------+
结果中,month
列是我们格式化后的月份形式,sales_num
列是每个月的销售量。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL中DATE_FORMAT()函数将Date转为字符串 - Python技术站