先合并成一个表吧: ks_name zhichu shouru select A.ks_name, sum(A.zhichu) as zhichu, 0 as shouru from A group by A.ks_name union all select B.ks_name, 0 as zhichu, sum(B.shouru) as shouru from B group by B.ks_name 然后对上面的临时表再合并下就行了 select C.ks_name, sum(C.zhichu) as zhichu, sum(C.shouru) as shouru from (上面那串) C
合并怎么写 select C.ks_name, sum(C.zhichu) as zhichu, sum(C.shouru) as shouru from (select A.ks_name, sum(A.zhichu) as zhichu, 0 as shouru from A group by A.ks_name union all select B.ks_name, 0 as zhichu, sum(B.shouru) as shouru from B group by B.ks_name ) C是这样吗
选择列表中的列 'C.ks_name' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。报错
select isnull(a.ks_name,b.ks_name) as 部門名稱,isnull(a.TotalZhichu,0) as 部門支出,isnull(b.TotalShouru,0) as 部門收入 from (select ks_name,sum(zhichu) as TotalZhichu from T1 group by ks_name) a full join (select ks_name,sum(shouru) as TotalShouru from T2 group by ks_name) b on a.ks_name=b.ks_name 可以應用到MS SQL 2000或以上版本。
可以帮着写一下吗 我写了好多个不好使
ks_name zhichu shouru
select A.ks_name, sum(A.zhichu) as zhichu, 0 as shouru from A group by A.ks_name
union all select B.ks_name, 0 as zhichu, sum(B.shouru) as shouru from B group by B.ks_name
然后对上面的临时表再合并下就行了
select C.ks_name, sum(C.zhichu) as zhichu, sum(C.shouru) as shouru from (上面那串) C
select C.ks_name, sum(C.zhichu) as zhichu, sum(C.shouru) as shouru from (select A.ks_name, sum(A.zhichu) as zhichu, 0 as shouru from A group by A.ks_name
union all select B.ks_name, 0 as zhichu, sum(B.shouru) as shouru from B group by B.ks_name
) C是这样吗
from (select ks_name,sum(zhichu) as TotalZhichu from T1 group by ks_name) a full join
(select ks_name,sum(shouru) as TotalShouru from T2 group by ks_name) b
on a.ks_name=b.ks_name 可以應用到MS SQL 2000或以上版本。