最近看到这样子的一个SQL语句的问题,问题貌似很简单,由于技术不过关,特此注明问题请高手指导!!!
请问如下问题的SQL如何实现?
表A
id , score , teacher
01 1 1
01 2 2
01 3 3
01 4 4
01 5 5
.....
02 1 1
02 2 2
02 3 3
....
....
说明,ID为学生号,score为得分,teacher为老师
要求如下,
1:如果一个ID,有九个或九个老师以上打分(有九条或九条以上记录),去掉两个最高分,两个最低分,然后剩余的取平均.
2:如果一个ID,有八个或八个老师以下打分(有八条或八条以下记录),去掉一个最高分,一个最低分,然后剩余的取平均.
3:使用一条SQL完成,不使用函数,动态SQL等.
请问如下问题的SQL如何实现?
表A
id , score , teacher
01 1 1
01 2 2
01 3 3
01 4 4
01 5 5
.....
02 1 1
02 2 2
02 3 3
....
....
说明,ID为学生号,score为得分,teacher为老师
要求如下,
1:如果一个ID,有九个或九个老师以上打分(有九条或九条以上记录),去掉两个最高分,两个最低分,然后剩余的取平均.
2:如果一个ID,有八个或八个老师以下打分(有八条或八条以下记录),去掉一个最高分,一个最低分,然后剩余的取平均.
3:使用一条SQL完成,不使用函数,动态SQL等.
浙公网安备 33010602011771号