编辑:我犯了一个错误,发票表带有 transactionId
我有 3 张桌子:
Transactions Reconciliations Invoices
id num line transId id Code transId
-- --- ---- ------- -- ---- -------------
3 1 1 3 5 Code 5 3
6 1 2 6 9 Code 9 8
7 1 3 7 12 Code 12 11
8 2 1 8
12 2 2 12
10 3 1 10
11 3 2 11
这个查询:
select
t1.id -- transaction id
t2.num -- reconciliation number
t3.Code -- Invoice code
from Transactions t1
left outer join Reconciliations t2 on t2.transId = t1.id
left outer join Invoices t3 on t3.transId = t1.id
给出以下结果:
id num code
-- --- ----
3 1 Code 5
6 1 null
7 1 null
8 2 Code 9
12 2 null
10 3 null
11 3 Code 12
但我想要的是这个:
id num code
-- --- ----
3 1 Code 5
6 1 Code 5
7 1 Code 5
8 2 Code 9
12 2 Code 9
10 3 Code 12
11 3 Code 12
当链接的 Invoice 表给出 null 时,要在上面加上文字,我想加入具有相同 Reconciliation 编号的 Reconciliations 中的所有记录。
编辑:我希望发票中的代码在共享相同对帐编号的所有交易中共享
我试图通过外部应用和子查询来做,但我无法找到实现它的方法。你有什么想法吗?