mysql 按日期删除数据库_MySQL数据库按日期汇总

这篇博客分享了如何使用SQL查询来统计一年中任务的超时和故障情况,分别按周、月、季度进行汇总。查询涉及日期格式化、子查询以及条件过滤,例如计划表ID、超时状态和异常/故障计数。通过这些查询,可以有效地分析任务完成的效率和质量。
摘要由CSDN通过智能技术生成

/*按一年的周数汇总*/

/*超时*/

SELECT DATE_FORMAT(t.create_time, '%Y.%u') AS time,

(SELECT COUNT(id) from t_task where DATE_FORMAT(create_time, '%Y.%u') = DATE_FORMAT(t.create_time, '%Y.%u') and plan_sheet_id=1 and overtime = 2) as count

FROM t_task t GROUP BY time ORDER BY time DESC;

注:'%Y.%u' 其中u的大小写得到的时间不一样,U大写会比小写小1,小写应该是周数从0还是,U大写应该是从1开始

/*故障*/

SELECT DATE_FORMAT(t.create_time, '%Y.%u') AS time,

(SELECT COUNT(id) from t_task where DATE_FORMAT(create_time, '%Y.%u') = DATE_FORMAT(t.create_time, '%Y.%u') and plan_sheet_id=1 and (exception_count>0 or fault_count > 0)) as count

FROM t_task t GROUP BY time ORDER BY time DESC;

/*按一年的月数汇总*/

/*超时*/

SELECT DATE_FORMAT(t.create_time,'%Y%m') as months,

(SELECT COUNT(id) from t_task where DATE_FORMAT(create_time, '%Y.%m') = DATE_FORMAT(t.create_time, '%Y.%m')

and plan_sheet_id=1 and overtime = 2 ) as count

FROM t_task t GROUP BY months ORDER BY months DESC;

/*故障*/

SELECT DATE_FORMAT(t.create_time,'%Y%m') as months,

(SELECT COUNT(id) from t_task where DATE_FORMAT(create_time, '%Y.%m') = DATE_FORMAT(t.create_time, '%Y.%m')

and plan_sheet_id=1 and (exception_count>0 or fault_count > 0)) as count

FROM t_task t GROUP BY months ORDER BY months DESC;

/*按一年的季度数汇总*/

/*超时*/

SELECT quarter(create_time) as quart,

(SELECT COUNT(id) from t_task where quarter(create_time) = quarter(t.create_time)

and plan_sheet_id=1 and overtime = 2 ) as count

FROM t_task t GROUP BY quartORDER BY quartDESC;

/*故障*/

SELECT quarter(create_time) as quart,

(SELECT COUNT(id) from t_task where quarter(create_time) = quarter(t.create_time)

and plan_sheet_id=1 and (exception_count>0 or fault_count > 0) ) as count

FROM t_task t GROUP BY quart ORDER BY quartDESC;

注:本文是自己在网上找的一些资料整合一起的,结合自己需求改了一些,https://blog.csdn.net/kenhins/article/details/52814333,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值