Как получить процент от столбца «отметки» в mysql - PullRequest
0 голосов
/ 08 января 2020

Это моя таблица:

this my table

Я пытаюсь этот код:

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

и получаю такой результат:

this is the result that I got

1 Ответ

0 голосов
/ 08 января 2020

Я думаю, что вы хотите:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...