博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL根据日期统计数据和查询数据
阅读量:4298 次
发布时间:2019-05-27

本文共 1255 字,大约阅读时间需要 4 分钟。

文章目录

MySQL根据日期统计数据和查询数据

一、前言

  • MySQL 5.6
  • 参考:

二、正文

示例内容说明:表名 = demo ;时间字段 = create_time

1.统计数据

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。

  • 日统计
select DATE_FORMAT(t.create_time, '%Y%m%d') daysfrom demo tgroup by days;
  • 周统计
select DATE_FORMAT(t.create_time, '%Y%u') weeksfrom demo tgroup by weeks;
  • 月统计
select DATE_FORMAT(t.create_time, '%Y%m') monthsfrom demo tgroup by months;
  • 年统计
select DATE_FORMAT(t.create_time, '%Y') yearsfrom demo tgroup by years;

2.查询数据

  • 查询今天数据
SELECT * FROM demo t WHERE TO_DAYS(t.create_time) = TO_DAYS(NOW());
  • 查询昨天数据
SELECT * FROM demo t WHERE TO_DAYS(NOW()) - TO_DAYS(t.create_time) = 1;
  • 近5天
SELECT * FROM demo t WHERE DATE_SUB(CURDATE(),INTERVAL 5 DAY) <= DATE(t.create_time)
  • 截止当前时间,1个月的数据
SELECT * FROM demo t WHERE BETWEEN DATE_SUB(NOW(),INTERVAL 1 MONTH) and NOW();
  • 本周数据(将周一设置为每周的起点,默认周日)
SELECT * FROM demo t WHERE YEARWEEK(DATE_FORMAT(t.create_time,'%Y-%m-%d'), 1) = YEARWEEK(NOW(), 1);
  • 上周数据(将周一设置为每周的起点,默认周日)
SELECT * FROM demo t WHERE YEARWEEK(DATE_FORMAT(t.create_time,'%Y-%m-%d'), 1) = YEARWEEK(NOW(), 1) -1;
  • 本月数据
SELECT * FROM demo t WHERE DATE_FORMAT(t.create_time,'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m');
  • 上月数据
SELECT * FROM demo t WHERE DATE_FORMAT(t.create_time,'%Y-%m') = DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL 1 MONTH),'%Y-%m');

转载地址:http://qwnws.baihongyu.com/

你可能感兴趣的文章
学习笔记_vnpy实战培训day04_作业
查看>>
OCO订单(委托)
查看>>
学习笔记_vnpy实战培训day05
查看>>
学习笔记_vnpy实战培训day06
查看>>
Python super钻石继承
查看>>
回测引擎代码分析流程图
查看>>
Excel 如何制作时间轴
查看>>
股票网格交易策略
查看>>
matplotlib绘图跳过时间段的处理方案
查看>>
vnpy学习_04回测评价指标的缺陷
查看>>
ubuntu终端一次多条命令方法和区别
查看>>
python之偏函数
查看>>
vnpy学习_06回测结果可视化改进
查看>>
读书笔记_量化交易如何建立自己的算法交易01
查看>>
设计模式03_工厂
查看>>
设计模式04_抽象工厂
查看>>
设计模式05_单例
查看>>
设计模式06_原型
查看>>
设计模式07_建造者
查看>>
设计模式08_适配器
查看>>