描述:首先一个考试里面有不同的评分项,还有不同的评分老师,每个老师的权重还不一样,
第一条计算已经评分的跟总共需要评分的总数,判断老师是否都已经对每个选项都已经进行评分了(所有评分是否结束)
SELECT t8.*,SUM(1) reviewed FROM (SELECT
t5.id course_id,sum(1) totalRecord
FROM
exp_score_option t1
JOIN EXP_PROJECT_SCORE_OPTION t2 ON t1.id = t2.exp_score_option_id
JOIN exp_course t5 ON t5.exp_id = t2.exp_project_id
JOIN exp_group t3 ON t5.score_users_id = t3.group_id
JOIN exp_score_group t4 ON t4.group_id = t3.group_id
join exp_result t6 on t6.COURSE_ID = t5.id where t5.ID = 21 and t6.CLIENT_IP is not null GROUP BY t5.ID) t8
LEFT JOIN exp_score_record t7 ON t7.course_ID = t8.course_id GROUP BY t7.COURSE_ID;
第二条是根据不同的老师不同权重评分 ,因为这里一个考试有不同的评分选项,一个课程有不同的学生参加考试,每个考试有不同的评分老师,这里只根据课程查询学生的每个选项的加权平均分
SELECT COURSE_ID,STU_ID,SCORE_ID,SCORE_USER_ID,SCORE_NUM,SCORE_TIME,WEIGHT
, SUM(WEIGHT), SU