gpt4 book ai didi

MySQL 使用 group by 进行计数和平均值

转载 作者:行者123 更新时间:2023-11-29 06:12:22 25 4
gpt4 key购买 nike

我会尽力描述。使用错误的数据模型。

Table1
id, name, area, bla1, bla2, bla3

Table2
table1_ID, stuff1, stuff2, ID

trigger on table1
insert row in table2 if table1 is updated

table1 中,我有 10 个不同的区域,只有 186 行,数量不多,我无法使用 Excel 在 2 秒内手动完成此操作,但我想创建实时报告。

报告将是

area1 - %complete
area2 - %complete
area3 - %complete
etc.....

table1中更新一行时,触发器会在table2中插入一些内容,指示“完成”。

我可以(可能真的很糟糕)

select
(select count(*) from table1 a where a.id in (select id from table2))
/
(select count(*) from table1)
*100

这给了我一个总体完成百分比。我正在考虑向每个选择添加 where 子句,硬编码“区域”,然后联合十次。呃,告诉我有一个更好的方法可以在一份报告中得到这个。

显然这个查询失败了

select area,
(
(select count(*) from table1 a where a.id in (select id from table2))
/
(select count(*) from table1)
*100) from table1
group by area

我认为 group by 必须适合那里的某个地方。提前致谢!

最佳答案

select area, count(table2.table1_ID) / count(table1.id)
from table1 left join table2 on table1.id = table2.table1_ID
group by area

关于MySQL 使用 group by 进行计数和平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8407514/

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