【问题标题】:How to get the percentage of the column 'marks' in mysql如何获取mysql中“标记”列的百分比
【发布时间】:2020-01-08 14:43:35
【问题描述】:

这是我的桌子:

我试试这个代码:

SELECT student_name, (marks)*100/(SELECT SUM(marks) as 'totalmarks') 
from tbl_marks 
GROUP BY student_name

我得到了这个结果:

【问题讨论】:

标签: mysql sql group-by


【解决方案1】:

我认为你想要:

select m.student_name, m.marks * 100 / t.marks as percent_overall
from (select student_name, sum(marks) marks from tbl_marks group by student_name) m
cross join (select sum(marks) marks from tbl_marks) t

这也可以用窗口函数来表达,比如:

select 
    student_name,
    sum(marks) * 100 / (sum(sum(marks)) over()) percent_overall
from tbl_marks
group by student_name

【讨论】:

    猜你喜欢
    • 2020-10-28
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    相关资源
    最近更新 更多