关于横向合并两个无关联sql union 注意重点是无关联

SELECT COUNT(*) AS '入库量' FROM cti_record_files AS aa

图片说明

SELECT COUNT(*) AS '初检量' FROM cti_record_files WHERE IS_EVALUATE = '2'

图片说明

预想合并后

图片说明图片说明

这样试试

select sum('入库量' ) as '入库量'  , sum('初检量' ) as '初检量'  from (
SELECT COUNT(*) AS '入库量'  , 0 as  '初检量' FROM cti_record_files AS aa
union all
SELECT 0 as  '入库量'  , COUNT(*) AS '初检量' FROM cti_record_files WHERE IS_EVALUATE = '2'
) C



如果是同一张表, 按表面需求

这种方式也可以达到效果


select sum(t1) as 入库量  , sum(t2) as 初检量 from (
select 1 as t1 , case IS_EVALUAT  when   '2'  then 1 else 0 end as t2
from  cti_record_files  ) ;

select (SELECT COUNT(*) FROM cti_record_files) as '入库量',(SELECT COUNT(*) FROM cti_record_files WHERE IS_EVALUATE = '2') as '初检量';

使用标量子查询即可。

select (SELECT COUNT(*) AS '入库量' FROM cti_record_files ) as 入库量, (SELECT COUNT(*) AS '初检量' FROM cti_record_files WHERE IS_EVALUATE = '2') as 初检量