select course_id, course_name, max(so) as max_num
from (
select course_id,sum(uv) over(partition by course_id order by dt) as so
from (
select course_id, user_id, in_datetime as dt, 1 as uv
from attend_tb
union
select course_id, user_id, out_datetime as dt, -1 as uv
from attend_tb
) a
) b join course_tb using(course_id)
group by course_id, course_name
order by course_id



京公网安备 11010502036488号