select
id, amount - (select sum(amount) as amount
from table2
where column = 'value' and table1.id = table2.id
group by table2.id) as amount
from
table1
order by
table1.id
结果是来自 table1 的所有值 -amount
除了table2
不在'stable1.id
中的table2.id
's 他们得到空值。
所以这一切都很好,除了我有空值,因为我需要这些作为table1.amount
值
也尝试过这样的东西,但仍然无法正常工作
select
id, amount - isnull((select sum(amount) as amount
from table2
where column = 'value' and table1.id = table2.id
group by table2.id), table1.amount) as amount
from
table1
order by
table1.id
然后我得到了,0.00
但是table1.id
结果集中有 null 的 's 确实有一个真实的金额值table1.amount
我需要的概述
table 1 values (1,12 ; 2,27 ; 3,9) table 2 values (1,9 ; 3,12) result table (1,3 ; 2,27 ; 3,-3)
所以我需要 table1 - 表 2 中的值来获取结果表