目录
- 1.1 now() 返回当前的日期和时间
- 1.2 CURRENT_DATE() 返回当前的日期
- 1.3 CURRENT_TIME() 返回当前的时间
- 1.4 DATE(datetime) 返回datetime的日期值
- 1.5 TIME(datetime) 返回datetime的时间值
- 2.1 DAYOFYEAR(date)
- 2.2 DAYOFMONTH(date) 返回date的月份中日期
- 2.3 DAYOFWEEK(date) 返回日期date的星期索引,从1开始
- 2.4 WEEKDAY(date) 返回日期date的星期索引,从0开始
- 3.1 YEAR(date) 返回date的年份
- 3.2 QUARTER(date) 返回date在一年中的季度
- 3.3 MONTH(date) 返回date在一年中的月份
- 3.4 WEEK(date) 返回date在一年中的第几周
- 3.5 DAY(date) 返回date的天数部分
- 3.6 HOUR(time) 返回time的小时
- 3.7 MINUTE(time) 返回time的分钟
- 3.8 SECOND(time) 返回time的秒数
- 4.1 DAYNAME(date) 返回date的星期名
- 4.2 MONTHNAME(date) 返回date的月份名
- 5.1 PERIOD_ADD(P,N) 增加N个月到阶段P
- 5.2 PERIOD_DIFF(P1,P2) 返回在时期P1和P2之间月数
- 6.1 DATE_FORMAT(date,"日期格式") 按照自定义格式输出日期
- 6.2 from_unixtime(ts,"日期格式") 根据指定的日期格式,格式化时间戳
| 函数 | 说明 |
|---|---|
| NOW() | 返回当前的日期和时间 |
| CURRENT_DATE() 或 CURDATE() | 返回当前的日期 |
| CURRENT_TIME() 或 CURTIME() | 返回当前的时间 |
| DATE(datetime) | 返回datetime的日期值 |
| TIME(datetime) | 返回datetime的时间值 |
| DAYOFYEAR(date) | 返回date在一年中的第几天(1~366) |
| DAYOFMONTH(date) | 返回date在一个月中的第几天(1~31) |
| DAYOFWEEK(date) | 返回date在一周中的第几天(1~7) |
| WEEKDAY(date) | 返回date在一周中的第几天(0~6) |
| YEAR(date) | 返回date的年份(1000~9999) |
| QUARTER(date) | 返回date在一年中的季度(1~4) |
| MONTH(date) | 返回date在一年中的月份(1~12) |
| week(date) | 返回date在一年中的第几周(0~53) |
| DAY(date) | 返回date的天数部分 |
| HOUR(time) | 返回time的小时值(0~23) |
| MINUTE(time) | 返回time的分钟值(0~59) |
| SECOND(time) | 返回time的秒值(0~59) |
| DAYNAME(date) | 返回date的星期名 |
| MONTHNAME(date) | 返回date的月份名 |
| PERIOD_ADD(P,N) | 增加N个月到阶段P(以格式YYMM或YYYYMM) |
| PERIOD_DIFF(P1,P2) | 返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM |
| DATE_FORMAT(date,“日期格式”) | 增按照自定义格式格式化日期date |
| from_unixtime(ts,“日期格式”) | 根据指定的日期格式,格式化时间戳 |
1.1 now() 返回当前的日期和时间
select now()
1.2 CURRENT_DATE() 返回当前的日期
select CURRENT_DATE()
1.3 CURRENT_TIME() 返回当前的时间
select CURRENT_TIME()
1.4 DATE(datetime) 返回datetime的日期值
select DATE('2023-07-31 17:18:20');
1.5 TIME(datetime) 返回datetime的时间值
select TIME('2023-07-31 17:18:20');
2.1 DAYOFYEAR(date)
返回date在一年中的日数, 在1到366范围内。
select DAYOFYEAR('1998-02-03');
-> 34
2.2 DAYOFMONTH(date) 返回date的月份中日期
返回date的月份中日期,在1到31范围内。
select DAYOFMONTH('1998-02-03');
-> 3
2.3 DAYOFWEEK(date) 返回日期date的星期索引,从1开始
返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。
select DAYOFWEEK('1998-02-03')
2.4 WEEKDAY(date) 返回日期date的星期索引,从0开始
返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。
select WEEKDAY('1998-02-03 22:23:00');
3.1 YEAR(date) 返回date的年份
返回date的年份,范围在1000到9999。
select YEAR('98-02-03');
-> 1998
3.2 QUARTER(date) 返回date在一年中的季度
select QUARTER('1998-02-03')
3.3 MONTH(date) 返回date在一年中的月份
返回date的月份,范围1到12。
select MONTH('1998-02-03');
3.4 WEEK(date) 返回date在一年中的第几周
2个参数形式WEEK()允许你指定星期是否开始于星期天或星期一。
如果第二个参数是0,星期从星期天开始,
如果第二个参数是1,从星期一开始。
select WEEK('1998-02-20',0);
-> 7
select WEEK('1998-02-20',1);
-> 8
3.5 DAY(date) 返回date的天数部分
select DAY('1998-02-20');;
-> 20
3.6 HOUR(time) 返回time的小时
返回time的小时,范围是0到23。
select HOUR('10:05:03');
-> 10
3.7 MINUTE(time) 返回time的分钟
返回time的分钟,范围是0到59。
select MINUTE('98-02-03 10:05:03');
-> 5
3.8 SECOND(time) 返回time的秒数
返回time的秒数,范围是0到59。
select SECOND('10:05:03');
-> 3
4.1 DAYNAME(date) 返回date的星期名
select DAYNAME("1998-02-05");
-> ‘Thursday’
4.2 MONTHNAME(date) 返回date的月份名
select MONTHNAME("1998-02-05");
-> ‘February’
5.1 PERIOD_ADD(P,N) 增加N个月到阶段P
增加N个月到阶段P(以格式YYMM或YYYYMM)。以格式YYYYMM返回值。注意阶段参数P不是日期值。
select PERIOD_ADD(9801,2);
-> 199803
5.2 PERIOD_DIFF(P1,P2) 返回在时期P1和P2之间月数
返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。
select PERIOD_DIFF(9802,199703);
-> 11
6.1 DATE_FORMAT(date,“日期格式”) 按照自定义格式输出日期
-- 按照年-月-日的格式输出当前日期
select DATE_FORMAT(now(),"%m-%d-%Y");
6.2 from_unixtime(ts,“日期格式”) 根据指定的日期格式,格式化时间戳
SELECT FROM_UNIXTIME(1621357200);
