我有以下问题:我有两个表,一个是包含交易的帐户表(在一天中可以有多个交易),另一个是具有帐户余额的表(其中的余额在结尾处记录日;由于每天都不发生交易,因此余额表的日期为“2014-01-05 800美元,下一行是2014-02-03 600美元”。我需要加入表格以获得当天的初始余额(余额表中的最后一个日期)。
select CLIENT_ID, TRANSACTION_ID, AMOUNT, DATE from TRANSACTIONS
余额表:
select CLIENT_ID, DATE, BALANCE from BALANCE
我需要像
这样的东西select *
from TRANSACTIONS t
inner join BALANCE b on b.CLIENT_ID = t.CLIENT_ID and t.DATE > b.DATE
(此处应为之前的最长日期)
select *
from TRANSACTIONS t
inner join BALANCE b
on b.CLIENT_ID = t.CLIENT_ID
and t.DATE = (select max (bl.DATE)
from BALANCE bl
where t.CLIENT = bl.CLIENT_ID
and bl.DATE < t.DATE)