gpt4 book ai didi

mysql - 使用 MySQL 的列组的百分比总计

转载 作者:行者123 更新时间:2023-11-29 05:14:42 27 4
gpt4 key购买 nike

如果我有一个包含以下内容的表格:

+---------+-------------+
| Country | campaign_id |
+---------+-------------+
| US | 1 |
| FR | 1 |
| FR | 1 |
| UK | 1 |
| NL | 2 |
| DE | 2 |
+---------+-------------+

如何像这样返回每个国家/地区的百分比:

+---------+------------+
| Country | Percentage |
+---------+------------+
| US | 25 |
| FR | 50 |
| UK | 25 |
+---------+------------+

这是我目前为止所做的:

SELECT country FROM campaigns WHERE campaign_id = 1

请注意,如果更容易,返回 0.25 也是可以的。

最佳答案

编写一个子查询以获取事件中的总行数,然后将其除以按国家/地区分组的行数。

SELECT a.country, ROUND(100 * COUNT(*)/b.total, 2) AS percentage
FROM yourTable AS a
CROSS JOIN (
SELECT COUNT(*) AS total
FROM yourTable
WHERE campaign_id = 1) AS b
WHERE a.campaign_id = 1
GROUP BY a.country

DEMO

关于mysql - 使用 MySQL 的列组的百分比总计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34678467/

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