题解 | #牛客直播各科目出勤率#
牛客直播各科目出勤率
https://www.nowcoder.com/practice/0cab547df4f0430b93042128f445d899
根据结果逆推,需要表格式 课程id,课程名称,在线时长10分钟及以上人数,报名总人数。
WITH t AS(
SELECT course_id,course_name,user_id
,SUM(TIMESTAMPDIFF(MINUTE,in_datetime,out_datetime)) len_total
FROM course_tb
LEFT JOIN attend_tb USING(course_id)
GROUP BY course_id,course_name,user_id
having SUM(TIMESTAMPDIFF(MINUTE,in_datetime,out_datetime))>=10)
SELECT t.course_id
,t.course_name
,ROUND(IFNULL(100*count(t.user_id)/cnt,0),2) AS "attend_rate(%)"
FROM t
JOIN (
SELECT course_id,COUNT(if_sign) AS cnt
FROM behavior_tb
WHERE if_sign=1
GROUP BY course_id
) t2 USING(course_id)
GROUP BY t.course_id,course_name
 查看20道真题和解析
查看20道真题和解析