SELECT
strAreaName AS 区域,
strTeacherName AS 姓名,
SUM(decDuration) OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 时间,
SUM(intTraineesNumber) OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 培训总人数,
COUNT(1) OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 培训总次数,
SUM(CASE WHEN intTrainingType IN (1,3) THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 内训次数,
SUM(CASE WHEN intTrainingType IN (2,4) THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 出差次数,
SUM(CASE WHEN intTrainingType IN (2,4) THEN (decGrants + decCost) ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 出差总费用,
strWorkContent AS 日常工作详细,
strCourseTitle AS 主要培训内容,
SUM(CASE WHEN intAttendanceStatusID = 5 THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 加班天数,
SUM(CASE WHEN intAttendanceStatusID IN (1,4,7,8,5) THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 上班天数,
SUM(CASE WHEN intAttendanceStatusID IN (2,3) THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 休息的天数,
SUM(CASE WHEN intAttendanceStatusID IS NOT NULL THEN 1 ELSE 0 END)
OVER(PARTITION BY intAreaID,intTeacherID,strTmp_TrainingType) AS 总的上班天数,
intTrainingType,
ROW_NUMBER() OVER(PARTITION BY intTeacherID,intAreaID, strTmp_TrainingType ORDER BY intTeacherID) AS rowNumber
FROM v_TrainingInfo
WHERE intTrainingType < 5 (责任编辑:admin) |