SELECT 
	course_id, course_name,
    ROUND(COUNT(DISTINCT IF(if_sign = 1, user_id, NULL)) / COUNT(DISTINCT IF(if_vw = 1, user_id, NULL)) * 100, 2) AS 'sign_rate(%)'
FROM 
	behavior_tb
    JOIN course_tb
    USING(course_id)
GROUP BY 
	course_id, course_name