Mysql数据库查询技巧_日期

1.MySql按日,按月,按年,按周分组统计数据

#按日查询

SELECT DATE_FORMAT(time,'%Y-%m-%d') theTime, sum(score) FROM timi GROUP BY theTime;

#按月查询

SELECT DATE_FORMAT(time,'%Y-%m') theTime, sum(score) FROM timi GROUP BY theTime;

#按年查询

SELECT DATE_FORMAT(time,'%Y') theTime, sum(score) FROM timi GROUP BY theTime;

#按周查询

SELECT DATE_FORMAT(time,'%Y-%u') theTime, sum(score) FROM timi GROUP BY theTime;

2.日期函数

select theTime,Date(theTime),YEAR(theTime),MONTH(theTime) from timi where Date(theTime) = '2020-08-22';

 Date('2020-08-22 17:20:02') : 获取年月日--->2020-08-22

Year('2020-08-22 17:20:02') : 获取年--->2020

Month('2020-08-22 17:20:02') : 获取月--->8

DAYOFWEEK('2020-08-22 17:20:02') : 返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)--->7

WEEKDAY('2020-08-22 17:20:02') : 返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)--->5

DAYOFMONTH('2020-08-22 17:20:02') : 返回date的月份中日期,在1到31范围内--->22

DAYOFYEAR('2020-08-22 17:20:02') : 返回date在一年中的日数, 在1到366范围内 --->235

DAYNAME('2020-08-22 17:20:02') : 返回date的星期名字--->Saturday

MONTHNAME('2020-08-22 17:20:02') : 返回date的月份名字--->August

QUARTER('2020-08-22 17:20:02') : 返回date一年中的季度,范围1到4--->3

3.查询2013年1月份数据

select * from product where date(add_time) between '2013-01-01' and '2013-01-31';

4.选择30天内的数据

SELECT something FROM table WHERE TO_DAYS(NOW()) - TO_DAYS(theTime) <= 30;

 

 

参考:

感谢:https://www.cnblogs.com/shaoing/p/8971758.html

感谢:https://www.jb51.net/article/138562.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值