Mysql SQL查询,查找条目是否大于整列的平均值之和+;全柱标准差

Mysql SQL查询,查找条目是否大于整列的平均值之和+;全柱标准差,mysql,sql,average,standard-deviation,Mysql,Sql,Average,Standard Deviation,比如说我有一张桌子 学生 标志 厕所 30 罗恩 40 接近。使用窗口功能。在MySQL中,您不需要使用大小写,因为支持布尔值: select s.student, (s.marks > avg(s.marks) over () + stddev_pop(s.marks) over ()) as final_marks from students s; 在MySQL的旧版本中,我建议在from子句中使用一个子查询: select s.*, (s.marks &

比如说我有一张桌子

学生 标志 厕所 30 罗恩 40
接近。使用窗口功能。在MySQL中,您不需要使用
大小写
,因为支持布尔值:

select s.student,
       (s.marks > avg(s.marks) over () + stddev_pop(s.marks) over ()) as final_marks
from students s;
在MySQL的旧版本中,我建议在
from
子句中使用一个子查询:

select s.*,
       (s.marks > ss.avg_marks + ss.stddev_pop_marks) as final_marks
from students s cross join
     (select avg(s.marks) as avg_marks,
             stddev_pop(s.marks) as stddev_pop_marks
      from students
     ) ss

非常感谢,如果我必须插入平均值(标记列)+标准化(标记列),而不是1,那么我应该如何修改我的query@rinkinag . . . 这回答了您在这里提出的问题。一个新问题应该作为新问题来提出。但是,如果您只需要一个包含总平均值+标准偏差的附加列,那么应该清楚如何将其添加到这些解决方案中。