0
我有以下模式甲骨文相关子查询的问题
Invoices
=================
invoice_number
account_id
invoice_amount
invoice_date
status ("Paid","Not Paid")
我想写一个查询来获取所有发票以下信息...
- 发票号
- 发票日期
- 帐号ID
- 发票金额
- 此帐户ID的最后一笔付款金额(在此行的发票日期之前)
我对最后一个项目(最后支付的发票金额)有问题。到目前为止,我有...
select
inv2.invoice_number,
inv2.invoice_date,
inv2.account_id,
inv2.invoice_amount,
(
select * from (
select inv.invoice_amount
from invoices inv
where inv.account_id = inv2.account_id
and inv.status = 'PAID'
and inv.invoice_date < inv2.invoice_date
order by inv.invoice_date desc
)
where rownum <=1
) as last_paid_amount
from
invoices inv2
我试图重构这个不使用相关子查询,因为我的数据集的大小使得这个非常昂贵的。我如何重构使用不相关的子查询。这甚至有可能吗?
谢谢