【发布时间】:2021-03-05 23:28:58
【问题描述】:
我必须创建一个包含计数、总和但值不好的报告(红色)
SQL FIDDLE:http://sqlfiddle.com/#!9/9aba2d/2/0
这是我的查询:
select
courses.id_courses,
courses.name_courses,
count(DISTINCT list_courses_prof.id_courses_prof) AS nbProfessors,
count(DISTINCT list_courses_stud.id_courses_stud) AS nbStudents,
sum(if(list_courses_stud.present_stud > 0,1,0)) AS nbPresents,
concat(round(sum(if(list_courses_stud.present_stud > 0,1,0)) / count(list_courses_stud.id_courses_stud) * 100,0),'%') AS pctPresent,
sum(if(list_gender.name_gender = 'Man',1,0)) AS NbMan,
concat(round(sum(if(list_gender.name_gender = 'Man',1,0)) / count(list_courses_stud.id_courses_stud) * 100,0),'%') AS pctMan,
sum(if(list_gender.name_gender = 'Woman',1,0)) AS NbWoman,
concat(round(sum(if(list_gender.name_gender = 'Woman',1,0)) / count(list_courses_stud.id_courses_stud) * 100,0),'%') AS pctWoman
from courses
left join list_courses_stud on courses.id_courses = list_courses_stud.id_courses_join
left join list_courses_prof on courses.id_courses = list_courses_prof.id_courses_join
left join students on list_courses_stud.id_student_join = students.id_student
left join list_gender on students.id_gender_join = list_gender.id_gender
group by courses.id_courses
order by courses.id_courses desc;
【问题讨论】:
-
请提供表格结构和示例数据,以便有人可以帮助您
-
对不起,我在 sqlfiddle 链接中创建了完整的架构
标签: mysql count sum percentage