MySQL中的百分比 - 在同一个表中的两列之间

Kum*_*thy 5 mysql select insert percentage

我有一个MySQL表,看起来像这样:

Name    | Pass |  Fail | Pass Percent | Fail Percent

Abdy    | 20   |  5    |              |
Bob     | 10   |  5    |              |
Cantona | 40   |  10   |              |
Dave    | 30   |  20   |              |
Run Code Online (Sandbox Code Playgroud)

我想要获得百分比:

喜欢:passpercent =(传递/传递+失败)*100

我可以用两个列的单个MySQL代码填充表吗?

表有希望看起来像这样:

Name    | Pass |  Fail | Pass Percent | Fail Percent

Abdy    | 20   |  5    |   80         |  20
Bob     | 10   |  5    |   66         |  33
Cantona | 40   |  10   |   80         |  20
Dave    | 30   |  20   |   60         |  40
Run Code Online (Sandbox Code Playgroud)

dou*_*BTV 9

这绝对是可能的.

填写第二个表格:

UPDATE mytable SET pass_pct=(pass/pass+fail)*100,fail_pct=(fail/pass+fail)*100
Run Code Online (Sandbox Code Playgroud)

当然,您也可以在选择第一个表时生成这些(如果您不想存储结果),例如:

SELECT name,pass,fail,(pass/pass+fail)*100 as pass_pct,(fail/pass+fail)*100 as fail_pct FROM mytable
Run Code Online (Sandbox Code Playgroud)