赞
踩
目录
(7)获取指定日期是星期几,可以根据mysql语言的设置来返回不同国家的星期
(8)获取日期的工作日索引值,即星期日为1,星期一为2,星期六为7
(9)提取日期的一部分,来获取当前日期的年月日,时分秒,周,季度等信息
(16)返回一个日期的工作日索引值,即星期一为0,星期二为1,星期日为6
- 查询语句:select CURDATE(),CURRENT_DATE(),CURRENT_TIME(),CURRENT_TIMESTAMP(),NOW()
- 结果: 2022-12-10,2022-12-10,12:29:42,2022-12-10 12:29:42,2022-12-10 12:29:42
DATE
值之间的天数- 查询语句:select DATEDIFF('2022/01/01','2022/01/05')
- 结果: -4
两个日期的格式可以不一样,结果是第一个日期减去第二个日期,如果要得到日期之间的周数和月数,可以对结果除以7或30,然后再进行四舍五入等操作
- 查询语句:select DAY(NOW()),DAY(LAST_DAY(NOW()))
- 结果: 10 31
可以获取日期在当前月的第几天,可以结合LAST_DAY函数来获取当前月的天数
- 查询语句:select DATE_ADD('2022-12-11 12:58:33',INTERVAL '1' DAY)
- 结果: 2022-12-12 13:58:33
单位可以设成天数,小时数,分钟数;也可以是两两的结合,中间用空格分开
无效或者错误的日期会返回null
- 查询语句:select DATE_SUB('2022-12-11 12:58:33',INTERVAL '1' DAY)
- 结果: 2022-12-10 12:58:33
用法和上面的一致
- 查询语句:select DATE_FORMAT('2022-12-11 12:58:33','%Y%m%d')
- 结果: 20221211
格式有很多,年月日之间也可以添加中划线或者斜线等分隔符
- 查询语句:select DAYNAME(NOW())
- 结果: Saturday
SELECT @@lc_time_names;
SET @@lc_time_names = 'en_US';
可以通过上面两个语句来查询和设置语言环境
1
,星期一为2
,星期六为7
- 查询语句:select DAYOFWEEK('2022-12-10 12:58:33')
- 结果: 7
- 查询语句:select EXTRACT( YEAR FROM '2022-12-10 12:58:33') YEAR,
- EXTRACT( MONTH FROM '2022-12-10 12:58:33') MONTH,
- EXTRACT( DAY FROM '2022-12-10 12:58:33') DAY,
- EXTRACT( WEEK FROM '2022-12-10 12:58:33') WEEK,
- EXTRACT( QUARTER FROM '2022-12-10 12:58:33') QUARTER,
- EXTRACT( HOUR FROM '2022-12-10 12:58:33') HOUR,
- EXTRACT( SECOND FROM '2022-12-10 12:58:33') SECOND
- 结果: 2022 12 10 49 4 12 33
- 查询语句:select MONTH('2022-12-10 12:58:33')
- 结果: 12
- 查询语句:select STR_TO_DATE('10-10,2022 hhhh qqqq','%m-%d,%Y')
- 结果: 2022-10-10
-
- 查询语句:SELECT STR_TO_DATE('2018','%Y');
- 结果: 2018-00-00
字符串和格式的分隔符要一致,否则无法转换成功
会忽略输入字符串末尾的额外字符
将输入字符串不提供的所有不完整的日期值设置为零
0
到6
的小数秒精度- 查询语句:select SYSDATE(6)
- 结果: 2022-12-10 14:11:05.472185
- 查询语句:SELECT TIMEDIFF('12:10:10','10:10:10')
- 结果: 02:00:00
DATE
或DATETIME
值之间的差值- 查询语句:select TIMESTAMPDIFF(month,'2018-01-01','2019-01-01')
- 结果: 12
单位可以设置成年月日,时分秒,周,季度等
- 查询语句:select WEEK('2022-12-10')
- 结果: 49
有两个参数:
date
是要获取周数的日期。mode
是一个可选参数,用于确定周数计算的逻辑。它允许您指定本周是从星期一还是星期日开始,返回的周数应在0
到52
之间或0
到53
之间。0
,星期二为1
,星期日为6
- 查询语句:select WEEKDAY('2022-12-10')
- 结果: 5
- 查询语句:select YEAR('2022-10-10')
- 结果: 2022
- 查询语句:select LAST_DAY(curdate())
-
- select DATE_ADD(curdate(),interval -day(curdate())+1 day)
- 结果: 2022-12-31
- 2022-12-01
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。