MYSQL的DATE_FORMAT()格式化日期

本文介绍MYSQL中DATE_FORMAT()函数的使用方法,通过不同的格式化字符串,可以将日期和时间值以各种期望的格式输出。

MYSQL的DATE_FORMAT()格式化日期

DATE_FORMA T(date, format) 根据格式串format 格式化日期或日期和时间值date,返回结果串。

可用DATE_FORMAT( ) 来格式化DATE 或DATETIME 值,以便得到所希望的格式。根据format字符串格式化date值:

%S, %s 两位数字形式的秒( 00,01, . . ., 59)

%i 两位数字形式的分( 00,01, . . ., 59)

%H 两位数字形式的小时,24 小时(00,01, . . ., 23)

%h, %I 两位数字形式的小时,12 小时(01,02, . . ., 12)

%k 数字形式的小时,24 小时(0,1, . . ., 23)

%l 数字形式的小时,12 小时(1, 2, . . ., 12)

%T 24 小时的时间形式(h h : m m : s s)

%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)

%p AM 或P M

%W 一周中每一天的名称( S u n d a y, Monday, . . ., Saturday)

%a 一周中每一天名称的缩写( Sun, Mon, . . ., Sat)

%d 两位数字表示月中的天数( 00, 01, . . ., 31)

%e 数字形式表示月中的天数( 1, 2, . . ., 31)

%D 英文后缀表示月中的天数( 1st, 2nd, 3rd, . . .)

%w 以数字形式表示周中的天数( 0 = S u n d a y, 1=Monday, . . ., 6=Saturday)

%j 以三位数字表示年中的天数( 001, 002, . . ., 366)

% U 周(0, 1, 52),其中Sunday 为周中的第一天

%u 周(0, 1, 52),其中Monday 为周中的第一天

%M 月名(J a n u a r y, February, . . ., December)

%b 缩写的月名( J a n u a r y, February, . . ., December)

%m 两位数字表示的月份( 01, 02, . . ., 12)

%c 数字表示的月份( 1, 2, . . ., 12)

%Y 四位数字表示的年份

%y 两位数字表示的年份

%% 直接值“%”

select date_format(日期字段,’%Y-%m-%d’) as ‘日期’ from test

### SQL `DATE_FORMAT` 函数详解 #### 一、函数定义与基本语法 `DATE_FORMAT` 是 SQL 中用于将日期或时间格式化为指定字符串格式的函数。此函数接受两个参数:第一个是要被格式化日期表达式;第二个则是描述期望输出样式的格式模板。 ```sql SELECT DATE_FORMAT(date_expression, format_string); ``` 该语句会返回按照给定模式重新排列后的字符表示形式[^2]。 #### 二、常用格式说明符及其含义 为了更好地理解和运用这个强大的工具,在这里列举一些常见的占位符以及它们所代表的意义: | 符号 | 描述 | | --- | ---- | | `%Y` | 年份,四位数表示法 | | `%y` | 年份,两位数表示法 | | `%m` | 数字月份 (01..12)| | `%c` | 小写数字月份数(1..12),不带前导零 | | `%d` | 日,带有前导零 (01..31) | | `%e` | 不带前导零的日 (1..31) | | `%H` | 小时 (00..23), 即24小时制 | | `%h`, `%I` | 小时 (01..12),即12小时制 | 更多详细的选项可以根据具体需求查阅官方文档获取完整的列表[^3]。 #### 三、实例展示 下面通过几个具体的例子来加深理解如何灵活地利用这些功能实现不同的效果: - **仅保留年月** ```sql SELECT DATE_FORMAT('2023-07-18', '%Y-%m'); -- 结果: 2023-07 ``` - **显示完整星期几名称** ```sql SELECT DATE_FORMAT(NOW(),'%W %M %D,%Y'); -- 如果当前时间为周三,则结果类似于 Wednesday July 19th,2023 ``` - **自定义分隔符连接各部分组件** ```sql SELECT DATE_FORMAT(CURDATE(),'%Y/%m/%d'); -- 当天日期按斜杠分割开来的样子比如今天就是 2023/07/19 ``` 以上便是有关于 MySQL 数据库内建的时间处理指令之一——`DATE_FORMAT()` 的讲解[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值