现有题目练习表question_practice_detail(device_id 设备号, question_id 题目ID, result 答题结果, event_date 日期),示例数据如下: 请统计每月各旬有多少人练题,假设此处每月的旬定义为:1~9号为上旬,10~19号为中旬,20号及之后为下旬。结果按月份由近到远、练题人数由大到小排序。示例数据输出如下:
示例1

输入

drop table if exists `question_practice_detail`;
CREATE TABLE `question_practice_detail` (
	`id` int PRIMARY KEY AUTO_INCREMENT,
	`device_id` int NOT NULL,
	`question_id`int NOT NULL,
	`result` varchar(32) NOT NULL,
	`event_date` date
);

INSERT INTO question_practice_detail(device_id,question_id,result,event_date) VALUES
	(2138,111,'wrong','2021-07-03'),
	(3214,112,'wrong','2021-08-09'),
	(3214,113,'wrong','2021-08-15'),
	(6543,111,'right','2021-08-13'),
	(2315,115,'right','2021-08-23'),
	(2315,117,'wrong','2021-08-24'),
	(3214,112,'wrong','2021-08-29'),
	(3217,113,'wrong','2021-07-25');

输出

dt_range|cnt
2021年08月下旬|2
2021年08月中旬|2
2021年08月上旬|1
2021年07月上旬|1
2021年07月下旬|1
加载中...