SELECT ms.id studentId, ms.exam_id examId, bc.code courseCode, bc.name courseName, ms.paper_number paperNumber, ms.paper_type paperType, bes.student_name studentName, bes.student_code studentCode, bes.college_name collegeName, ms.secret_number secretNumber, bes.college_name college, bes.major_name majorName, bes.teach_class_name teachClassName, bes.class_name className, su1.real_name teacherName, ms.objective_score objectiveScore, ms.subjective_score subjectiveScore, ifnull(ms.objective_score, 0) + ifnull(ms.subjective_score, 0) totalScore, ms.objective_score_list objectiveScoreList, ms.subjective_score_list subjectiveScoreList, ms.check_user_id checkUserId, su.login_name checkUserLoginName, su.real_name checkUserName, ms.check_time checkTime, ms.sheet_path sheetPath, ms.exam_start_time examStartTime, ms.exam_end_time examEndTime, ms.scan_status scanStatus, ms.subjective_status subjectiveStatus, ms.is_absent absent, ms.omr_absent omrAbsent, ms.is_manual_absent manualAbsent, ms.is_upload upload, bes.status studentStatus, ms.is_breach breach, ms.omr_breach omrBreach, ifnull(ms.is_manual_breach,0) manualBreach FROM (select * from mark_student where exam_id = #{examId} and paper_number = #{paperNumber}) ms LEFT JOIN (select * from basic_exam_student where exam_id = #{examId}) bes ON ms.basic_student_id = bes.id LEFT JOIN basic_course bc ON ms.course_id = bc.id LEFT JOIN sys_user su ON ms.check_user_id = su.id LEFT JOIN sys_user su1 ON bes.teacher_id = su1.id AND bes.college_name LIKE CONCAT('%', #{college}, '%') AND bes.major_name LIKE CONCAT('%', #{majorName}, '%') AND bes.teach_class_name LIKE CONCAT('%', #{teachClassName}, '%') AND bes.class_name LIKE CONCAT('%', #{className}, '%') AND su1.real_name LIKE CONCAT('%', #{teacher},'%') AND ms.objective_score = 0 AND ms.objective_score = 0 AND ms.subjective_score > 0 AND ms.objective_score > 0 AND ms.subjective_score = 0 AND (ms.is_absent = 1 OR ms.omr_absent = 1 OR ms.is_manual_absent = 1 OR bes.status = 'M') AND (ms.is_absent = 0 and ms.omr_absent = 0 and ms.is_manual_absent = 0 and bes.status != 'M' and ms.scan_status = 'SCANNED' AND ms.is_upload = 1) AND (ms.scan_status = 'UNEXIST' and ms.is_absent = 0 and ms.omr_absent = 0 and ms.is_manual_absent = 0 and bes.status != 'M') AND (ms.is_breach = 1 OR ms.omr_breach = 1 OR ms.is_manual_breach = 1 OR bes.status = 'B') AND (ms.is_breach = 0 AND ms.omr_breach = 0 AND ms.is_manual_breach = 0 OR bes.status != 'B') AND (ms.is_absent = 1 OR ms.is_breach = 1 OR ((ifnull(ms.subjective_score, 0) + ifnull(ms.objective_score, 0)) >= #{startScore} AND (ifnull(ms.subjective_score,0) + ifnull(ms.objective_score,0)) <= #{endScore})) AND (ms.is_absent = 0 AND ms.is_breach = 0 AND ((ifnull(ms.subjective_score,0) + ifnull(ms.objective_score,0)) >= #{startScore} AND (ifnull(ms.subjective_score,0) + ifnull(ms.objective_score,0)) <= #{endScore})) AND (ms.is_absent = 1 OR ms.is_breach = 1 OR ((ifnull(ms.subjective_score, 0) >= #{subjectiveStartScore} AND ifnull(ms.subjective_score, 0) <= #{subjectiveEndScore}))) AND (ms.is_absent = 0 AND ms.is_breach = 0 AND ((ifnull(ms.subjective_score, 0) >= #{subjectiveStartScore} AND ifnull(ms.subjective_score, 0) <= #{subjectiveEndScore}))) AND (ms.is_absent = 1 OR ms.is_breach = 1 OR ((ifnull(ms.objective_score, 0) >= #{objectiveStartScore} AND ifnull(ms.objective_score, 0) <= #{objectiveEndScore}))) AND (ms.is_absent = 0 AND ms.is_breach = 0 AND ((ifnull(ms.objective_score, 0) >= #{objectiveStartScore} AND ifnull(ms.objective_score, 0) <= #{objectiveEndScore}))) AND exists (SELECT 1 FROM mark_subjective_score mss WHERE ms.id = mss.student_id AND mss.score = #{subScore}) AND ms.objective_score < #{objectiveScoreLt} AND bes.student_name like concat('%',#{studentName}, '%') AND bes.student_code = #{studentCode} AND ms.secret_number = #{secretNumber} AND bes.teacher_id = #{dpr.requestUserId} AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = ms.course_id) AND bc.teaching_room_id IN #{item} order by (ifnull(ms.objective_score, 0) + ifnull(ms.subjective_score, 0)) ASC order by (ifnull(ms.objective_score, 0) + ifnull(ms.subjective_score, 0)) DESC order by #{orderField} #{orderType} order by ms.is_absent, bes.status desc, bes.student_code update basic_exam_student set paper_type = #{paperType} where id = #{basicStudentId} where t.exam_id=#{query.examId} and t.id=#{query.studentId} AND t.scan_status in #{st} and t.student_code=#{query.studentCode} and bes.student_name=#{query.studentName} and t.package_code=#{query.packageCode} and t.course_id=#{query.courseId} and t.course_paper_id=#{query.coursePaperId} and t.paper_number=#{query.coursePaperNumber} and bes.exam_place=#{query.examPlace} and bes.exam_room=#{query.examRoom} and t.absent_suspect=#{query.absentSuspect} and t.omr_absent=#{query.omrAbsent} and t.omr_absent_checked=#{query.omrAbsentChecked} and t.is_manual_absent=#{query.manualAbsent} and t.assigned=#{query.assigned} and t.assign_confirmed=#{query.assignConfirmed} and t.invalid=#{query.invalid} and t.incomplete=#{query.incomplete} and t.question_filled=#{query.questionFilled} and t.miss_scan=#{query.missScan} and (t.student_code=#{query.studentCodeOrName} or bes.student_name=#{query.studentCodeOrName}) and ifnull(t.paper_type, '#') = #{query.paperType} and t.paper_type_check_status=#{query.paperTypeCheckStatus} and t.omr_breach = #{query.omrBreach} and t.is_manual_breach = #{query.manualBreach} AND t.create_id = #{dpr.requestUserId} where s.exam_id=#{req.examId} and s.paper_number=#{req.paperNumber} and bes.student_code=#{req.studentCode} and bes.student_code >= #{req.startStudentCode} and bes.student_code <= #{req.endStudentCode} and bes.student_name=#{req.studentName} and bes.college_name like concat(#{req.college}, '%') and bes.major_name like concat(#{req.majorName}, '%') and bes.teach_class_name like concat(#{req.teachClassName}, '%') and bes.class_name like concat(#{req.className}, '%') and (ifnull(s.objective_score,0)+ifnull(s.subjective_score,0)) >= #{req.startScore} and (ifnull(s.objective_score,0)+ifnull(s.subjective_score,0)) <= #{req.endScore} and ifnull(s.objective_score,0) >= #{req.objectiveStartScore} and ifnull(s.objective_score,0) <= #{req.objectiveEndScore} and ifnull(s.subjective_score,0) >= #{req.subjectiveStartScore} and ifnull(s.subjective_score,0) <= #{req.subjectiveEndScore} AND bes.teacher_id = #{dpr.requestUserId} AND bc.teaching_room_id IN #{item}