gpt4 book ai didi

mysql - 使用 MySQL 查找通过的数量和百分比

转载 作者:行者123 更新时间:2023-11-29 05:09:10 26 4
gpt4 key购买 nike

我有一个考试表,其中包含总数(参加考试的学生人数)、失败(考试失败的学生人数)和日期等详细信息,如下所示

id key    value date
1 total 400 2017-02-28
2 failed 200 2017-02-28
3 total 350 2017-02-27
4 failed 180 2017-02-27
5 total 500 2017-02-26
6 failed 250 2017-02-26
7 total 600 2017-02-25
8 failed 200 2017-02-25
9 total 400 2017-02-24
10 failed 100 2017-02-24

我在 MySQL 中编写了很多聚合查询,但现在我需要使用单个查询来产生如下所示的结果。

我们如何计算两行的通过率和通过率?

id total failed passed passed percentage date
1 400 200 200 50% 2017-02-28
2 350 180 170 48.57% 2017-02-27
3 500 250 250 50% 2017-02-26
4 600 200 400 66.67% 2017-02-25
5 400 100 200 75% 2017-02-24

谁能帮我解决这个问题

最佳答案

例如:

SELECT date
, SUM(CASE WHEN attribute = 'total' THEN value END) total
, SUM(CASE WHEN attribute = 'failed' THEN value END) failed
, SUM(CASE WHEN attribute = 'total' THEN value END) - SUM(CASE WHEN attribute = 'failed' THEN value END) passed
, 100 - SUM(CASE WHEN attribute = 'failed' THEN value END) / SUM(CASE WHEN attribute = 'total' THEN value END) * 100 pct_passed
FROM my_table
GROUP
BY date;

关于mysql - 使用 MySQL 查找通过的数量和百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42579380/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com