select t1.course_id,t2.course_name,t1.num from (
select count(distinct user_id) as num ,course_id from
attend_tb where time(in_datetime)<='19:00:00' and time(out_datetime) >='19:00:00'
group by course_id ) t1
left join course_tb as t2 on t1.course_id = t2.course_id
order by t1.course_id