123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- DROP VIEW IF EXISTS class_data;
- CREATE VIEW class_data AS
- SELECT t1.id, t1.name, t1.code,t2.name AS gradeName,t1.grade_id AS gradeId,t3.name AS teacherName,t3.mobile AS teacherMobile,t1.teacher_id AS teacherId,
- t4.name AS enrollTypeCn,t1.enroll_type AS enrollType,t5.name AS classTypeCn,t1.class_type AS classType,
- t6.name AS classroomName,t1.classroom_id AS classroomId,t7.name AS orgName,t1.org_id AS orgId,t8.name AS majorSetName,t1.major_set_id AS majorSetId,
- t1.is_order_class AS isOrderClass,t1.is_graduate AS isGraduate,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a1.gender = 'SB10001' AND a2.class_id = t1.id
- AND a2.archives_status = 'FB2901') AS maleCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a2.class_id = t1.id AND a2.stduy_status = 'FB3002'
- AND a2.archives_status = 'FB2901' AND a1.gender = 'SB10001') AS maleStayCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a2.class_id = t1.id AND a2.stduy_status = 'FB3001'
- AND a2.archives_status = 'FB2901' AND a1.gender = 'SB10001') AS maleNotStayCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a1.gender = 'SB10002' AND a2.class_id = t1.id
- AND a2.archives_status = 'FB2901') AS femaleCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a2.class_id = t1.id AND a2.stduy_status = 'FB3002'
- AND a2.archives_status = 'FB2901' AND a1.gender = 'SB10002') AS femaleStayCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a2.class_id = t1.id AND a2.stduy_status = 'FB3001'
- AND a2.archives_status = 'FB2901' AND a1.gender = 'SB10002') AS femaleNotStayCount,
- (SELECT COUNT(DISTINCT(a1.id)) FROM xjr_user a1
- LEFT JOIN base_student_school_roll a2 ON a1.id = a2.user_id
- WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
- AND a2.class_id = t1.id
- AND a2.archives_status = 'FB2901') AS allCount
- FROM base_class t1
- LEFT JOIN base_grade t2 ON t1.grade_id = t2.id
- LEFT JOIN xjr_user t3 ON t1.teacher_id = t3.id
- LEFT JOIN xjr_dictionary_detail t4 ON t4.code = t1.enroll_type
- LEFT JOIN xjr_dictionary_detail t5 ON t5.code = t1.class_type
- LEFT JOIN base_classroom t6 ON t6.id = t1.classroom_id
- LEFT JOIN xjr_department t7 ON t7.id = t1.org_id
- LEFT JOIN base_major_set t8 ON t8.id = t1.major_set_id
- WHERE t1.delete_mark = 0;
|