SELECT DATE_FORMAT(A.Date, '%Y-%m-%d') AS Date,A.YearStr,SUM(StudentCount) AS StudentCount,SUM(AttendClassHour) AS AttendClassHour,SUM(AttendClassHourScore) AS AttendClassHourScore
,SUM(OnLineInteractive) AS OnLineInteractive,SUM(OnLineInteractiveScore) AS OnLineInteractiveScore,SUM(Renew) AS Renew,SUM(RenewScore) AS RenewScore,SUM(`Upgrade`) AS `Upgrade`
,SUM(UpgradeScore) AS UpgradeScore,SUM(Trans) AS Trans,SUM(TransScore) AS TransScore,SUM(TrialSpeak) AS TrialSpeak,SUM(TrialSpeakScore) AS TrialSpeakScore,SUM(Truancy) AS Truancy
,SUM(TruancyScore) AS TruancyScore,SUM(Withdraws) AS Withdraws,SUM(WithdrawsScore) AS WithdrawsScore,SUM(Complaint) AS Complaint,SUM(ComplaintScore) AS ComplaintScore
,SUM(TeacherBeLate) AS TeacherBeLate,SUM(TeacherBeLateScore) AS TeacherBeLateScore,SUM(N5ClassHours) AS N5ClassHours,SUM(N5ClassHoursScore) AS N5ClassHoursScore,SUM(N4ClassHours) AS N4ClassHours
,SUM(N4ClassHoursScore) AS N4ClassHoursScore,SUM(N3ClassHours) AS N3ClassHours,SUM(N3ClassHoursScore) AS N3ClassHoursScore,SUM(N2ClassHours) AS N2ClassHours,SUM(N2ClassHoursScore) AS N2ClassHoursScore
,SUM(N1ClassHours) AS N1ClassHours,SUM(N1ClassHoursScore) AS N1ClassHoursScore,SUM(MiniAppPractise) AS MiniAppPractise,SUM(MiniAppPractiseScore) AS MiniAppPractiseScore,SUM(MiniAppTime) AS MiniAppTime
,SUM(MiniAppTimeScore) AS MiniAppTimeScore,SUM(TotalScore) AS TotalScore,SUM(AvgScore) AS AvgScore,SUM(ScoreGap) AS ScoreGap,SUM(ActivityNum) AS ActivityNum
FROM RB_Teacher_Static AS A
WHERE 1=1
");
...
...
@@ -47,15 +54,64 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ",nameof(RB_Teacher_Static_Extend.TeacherId),query.TeacherId);
}
elseif(!string.IsNullOrEmpty(query.QTeacherIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ",nameof(RB_Teacher_Static_Extend.TeacherId),query.QTeacherIds);
}
else
{
builder.AppendFormat(" AND A.{0}={1} ",nameof(RB_Teacher_Static_Extend.TeacherId),0);
}
}
builder.AppendFormat(" GROUP BY DATE_FORMAT(A.Date, '%Y-%m-%d') ,A.YearStr,A.MonthStr,A.Times ");
builder.AppendFormat(" ORDER BY A.{0} ASC ",nameof(RB_Student_Static_Extend.Id));
//builder.AppendFormat(" ORDER BY DATE_FORMAT(A.Date, '%Y-%m-%d') ASC ");
SELECT A.TeacherId,CONCAT(DATE_FORMAT(A.Date, '%Y-%m'),'-01') AS Date,A.YearStr,SUM(StudentCount) AS StudentCount,SUM(AttendClassHour) AS AttendClassHour,SUM(AttendClassHourScore) AS AttendClassHourScore
,SUM(OnLineInteractive) AS OnLineInteractive,SUM(OnLineInteractiveScore) AS OnLineInteractiveScore,SUM(Renew) AS Renew,SUM(RenewScore) AS RenewScore,SUM(`Upgrade`) AS `Upgrade`
,SUM(UpgradeScore) AS UpgradeScore,SUM(Trans) AS Trans,SUM(TransScore) AS TransScore,SUM(TrialSpeak) AS TrialSpeak,SUM(TrialSpeakScore) AS TrialSpeakScore,SUM(Truancy) AS Truancy
,SUM(TruancyScore) AS TruancyScore,SUM(Withdraws) AS Withdraws,SUM(WithdrawsScore) AS WithdrawsScore,SUM(Complaint) AS Complaint,SUM(ComplaintScore) AS ComplaintScore
,SUM(TeacherBeLate) AS TeacherBeLate,SUM(TeacherBeLateScore) AS TeacherBeLateScore,SUM(N5ClassHours) AS N5ClassHours,SUM(N5ClassHoursScore) AS N5ClassHoursScore,SUM(N4ClassHours) AS N4ClassHours
,SUM(N4ClassHoursScore) AS N4ClassHoursScore,SUM(N3ClassHours) AS N3ClassHours,SUM(N3ClassHoursScore) AS N3ClassHoursScore,SUM(N2ClassHours) AS N2ClassHours,SUM(N2ClassHoursScore) AS N2ClassHoursScore
,SUM(N1ClassHours) AS N1ClassHours,SUM(N1ClassHoursScore) AS N1ClassHoursScore,SUM(MiniAppPractise) AS MiniAppPractise,SUM(MiniAppPractiseScore) AS MiniAppPractiseScore,SUM(MiniAppTime) AS MiniAppTime
,SUM(MiniAppTimeScore) AS MiniAppTimeScore,SUM(TotalScore) AS TotalScore,SUM(AvgScore) AS AvgScore,SUM(ScoreGap) AS ScoreGap,SUM(ActivityNum) AS ActivityNum
FROM RB_Teacher_Static AS A
WHERE 1=1 AND A.Date<>'0001-01-01 00:00:00'
");
if(query!=null)
{
if(query.Group_Id>0)
{
builder.AppendFormat(" AND A.{0}={1} ",nameof(RB_Teacher_Static_Extend.Group_Id),query.Group_Id);
}
if(query.YearStr>0)
{
if(isYear)
{
builder.AppendFormat(" AND A.{0}<={1} ",nameof(RB_Teacher_Static_Extend.YearStr),query.YearStr);
}
else
{
builder.AppendFormat(" AND A.{0}={1} ",nameof(RB_Teacher_Static_Extend.YearStr),query.YearStr);
}
}
}
builder.AppendFormat(" GROUP BY DATE_FORMAT(A.Date, '%Y-%m'),A.TeacherId ");
builder.AppendFormat(" ORDER BY DATE_FORMAT(A.Date, '%Y-%m') ASC ");