在不同的表中对相同的命名列进行计数和分组(mysql)

时间:2013-01-31 22:00:20

标签: mysql

好的我有两张桌子: 表1如下所示:

id age gender
1   10   M
2   11   F
3   11   F

表2看起来像这样(具有不同的值):

id age gender
1  11   F
2  12   M
3  10   M

现在我希望我的最终输出如下所示:

age count
10   2
11   3
12   1

实现这一目标的最有效方法是什么?

2 个答案:

答案 0 :(得分:5)

您希望聚合联合:

select age, count(*)
from (select id, age, gender from table1 union all
      select id, age, gender from table2
     ) t
group by age

答案 1 :(得分:0)

试试这个

select age ,count(age) count from table1 group by age
union
select age, count(age)  count from table2 group by age