题意明确:
2021年8月份所有练习过题目的总用户数和练习过题目的总次数
问题分解:
- 限定条件:2021年8月份,匹配date字段即可,匹配方法主要有三种:
(1)like语法:date like "2021-08%"
(2)year、month函数:year(date)='2021' and month(date)='08'
;
(3)date_format函数:date_format(date, '%Y-%m')='2021-08';
- 2:总用户数:count函数计数,因为用户有重复,所以需要distinct去重,即
count(distinct device_id)
- 3:总次数:count(question_id)即可
细节问题:
- 表头重命名:as语法
完整代码:
select count(distinct device_id) as did_cnt, count(question_id) as question_cnt from question_practice_detail where date like "2021-08%"