gpt4 book ai didi

mysql - 在 MySQL 查询中计算百分比

转载 作者:行者123 更新时间:2023-11-30 01:32:39 25 4
gpt4 key购买 nike

我正在尝试生成一个 MySQL 表,其中包含一列,显示与具有相同分组的一个计数相对于另一个计数相对应的百分比。总的来说,我想将以下两个查询合并为一个,而不是显示计数,而是显示百分比。这是两个查询:

SELECT machine, COUNT(machine)
FROM rtcdb.session
WHERE project = "CSC032"
AND (qc_gsr = 'green'
AND qc_hr = 'green'
AND qc_acz = 'green'
AND qc_bre = 'green'
)
GROUP BY machine;

&

SELECT machine, COUNT(machine)
FROM rtcdb.session
WHERE project = "CSC032"
GROUP BY machine;

在某些情况下,第一个查询生成的行数少于第二个查询 - 当存在根本没有任何成功(绿色)的机器时,就会发生这种情况。我如何将这些查询组合成一个计算所有成功机器的百分比(本质上是成功率)的查询,并将其显示在其自己的列中?

最佳答案

类似的事情

SELECT
machine
, COUNT(DISTINCT machine) AS "nb"
, COUNT(DISTINCT
IF(qc_gsr = "green"
AND qc_hr = "green"
AND qc_acz = "green"
AND qc_bre = "green"
), machine, NULL)
) AS "green_nb"
, COUNT(DISTINCT
IF(qc_gsr = "green"
AND qc_hr = "green"
AND qc_acz = "green"
AND qc_bre = "green"
), machine, NULL)
) / COUNT(machine) * 100 AS "%"
FROM rtcdb.session
WHERE project = "CSC032"
GROUP BY machine
;

关于mysql - 在 MySQL 查询中计算百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17278220/

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