我的 SQL - 由其他字段对多表分组的 COUNT 字段
My SQL - COUNT field on multitable group by other field
我没有创建正确的请求。
我的要求是:
select actionreal, sum(nb_actions) nb_actions from (
select actionreal, count(distinct departement) nb_actions
from militant_action_nutrition
where actionreal in (1, 2, 3)
group by actionreal
union
select actionreal, count(distinct departement) nb_actions
from militant_action_jna
where actionreal in (1, 2, 3)
group by actionreal
) t
group by actionreal
我需要通过 actionreal 在 2 个表上获取不同部门的数量。
在militant_action_nutrition我有
"Bas-Rhin" 和 "Manche" 用于 actionreal=1 ,"Bas-Rhin" 等 "Manche" 用于 actionreal=2.
在militant_action_jna我有
"Bas-Rhin"、"Manche" 和 "Yonne" 用于 actionreal=1,"Bas-Rhin" 等 "Manche" 用于 actionreal=2。
我的请求结果是:
1 | 5
2 | 2
但我需要结果:
1 | 3
2 | 2
感谢您的帮助。
先做一个联合,然后分组:
select actionreal, count(distinct departement) nb_actions from (
select actionreal, departement
from militant_action_nutrition
where actionreal in (1, 2, 3)
union
select actionreal, departement
from militant_action_jna
where actionreal in (1, 2, 3)
) t
group by actionreal
在我所知道的所有数据库中 UNION
运算符实际上会删除重复的条目,因此最终计数应该是您想要的。
我没有创建正确的请求。
我的要求是:
select actionreal, sum(nb_actions) nb_actions from (
select actionreal, count(distinct departement) nb_actions
from militant_action_nutrition
where actionreal in (1, 2, 3)
group by actionreal
union
select actionreal, count(distinct departement) nb_actions
from militant_action_jna
where actionreal in (1, 2, 3)
group by actionreal
) t
group by actionreal
我需要通过 actionreal 在 2 个表上获取不同部门的数量。
在militant_action_nutrition我有
"Bas-Rhin" 和 "Manche" 用于 actionreal=1 ,"Bas-Rhin" 等 "Manche" 用于 actionreal=2.
在militant_action_jna我有
"Bas-Rhin"、"Manche" 和 "Yonne" 用于 actionreal=1,"Bas-Rhin" 等 "Manche" 用于 actionreal=2。
我的请求结果是:
1 | 5
2 | 2
但我需要结果:
1 | 3
2 | 2
感谢您的帮助。
先做一个联合,然后分组:
select actionreal, count(distinct departement) nb_actions from (
select actionreal, departement
from militant_action_nutrition
where actionreal in (1, 2, 3)
union
select actionreal, departement
from militant_action_jna
where actionreal in (1, 2, 3)
) t
group by actionreal
在我所知道的所有数据库中 UNION
运算符实际上会删除重复的条目,因此最终计数应该是您想要的。