因疫情原因,需要统计人员动态,因数据量较大,将根据用户id 存入不同的表中,如下有两个表,现在需要根据某个条件查询统计数据,我们可以用union all 将结果集合并在一起。
下面是联合两个表查询语句:
select count(*) as sum1 from retrun_factory emp_id='S20190001'
union all
select count(*) as sum1 from retrun_factory_log emp_id='S20190001'
查询结果:
现在我们需要将数据汇总起来,算出用户S20190001 一共几条数据,使用SUM,查询语句如下:
select sum(sum1) from (
select count(*) as sum1 from retrun_factory emp_id='S20190001'
union all
select count(*) as sum1 from retrun_factory_log emp_id='S20190001'
) as total
结果如下:
这样就完成了。
注意:union all 的所有表的别名并没有什么意义,但是必须有,否则会报错。