我已经看过
other posts about using the median() window function in Redshift了,但你怎么用它到最后有一个组的查询呢?
例如,假设表课程:
Course | Subject | Num_Students ------------------------------- 1 | Math | 4 2 | Math | 6 3 | Math | 10 4 | Science | 2 5 | Science | 10 6 | Science | 12
我想得到每门课程的学生中位数.我如何编写一个给出以下结果的查询:
Subject | Median ----------------------- Math | 6 Science | 10
我试过了:
SELECT subject,median(num_students) over () FROM course GROUP BY 1 ;
但是它列出了主题的每一次出现以及相同主题的相同中位数数字(这是假数据,因此它返回的实际值不是6,但只显示所有主题的相同):
Subject | Median ----------------------- Math | 6 Math | 6 Math | 6 Science | 6 Science | 6 Science | 6
您只需要删除它的“over()”部分.
SELECT subject,median(num_students) FROM course GROUP BY 1;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。