select a.course_id,a.course_name,round(sum(attend)/sign_num*100,2) from course_tb a left join ( select b.user_id,b.course_id,count(distinct(b.user_id)) as attend from attend_tb b left join behavior_tb c on b.user_id=c.user_id and b.course_id=c.course_id where if_sign=1 group by b.course_id,b.user_id...