我有兩個表,如tnx_lc_invoice和tnx_lc_payment。我想從這兩個表中生成報告。如何優化多個表中的多個子查詢?
表模式如下面的圖像
tnx_lc_payment
tnx_lc_invoice
我想生成輸出利柯以下圖片
輸出
我想下面的查詢和它產生類似的輸出。但我想優化此查詢或任何替代解決方案,以獲得更快的結果。
SELECT
a.lc_no,
a.invoiceValue,
b.paymentValue,
(
a.invoiceValue - b.paymentValue
) AS shortPaymentValue
FROM
(
SELECT
lc_no,
sum(invoice_value) AS invoiceValue
FROM
tnx_lc_invoice
GROUP BY
lc_no
) a
INNER JOIN (
SELECT
lc_no,
sum(payment_value) AS paymentValue
FROM
tnx_lc_payment
GROUP BY
lc_no
) b ON a.lc_no = b.lc_no
如果還有其他替代方案,請讓我知道。請提前致謝。
您使用的是SQL Server,PostgreSQL還是MySQL?他們都是不同的RDBMS –
SQL Server或MySQL是好的 – Faisal
我刪除了無關的數據庫標籤。隨意添加適合您實際使用的數據庫的標籤。數據通常存儲在單個數據庫中。 –