0

私は小さな請求書申請書を作成していますが、請求書の未払い総額を取得するためのクエリで立ち往生しています。

少し説明:

データベースに2つのテーブルがありinvoicespaymentsそれらは列に関連していますinvoice_id。1つの請求書に対して複数の支払いを行うことができます。

私が取得したいのは、すべての請求書の合計未決済額です。

これは私が試したものですが、機能しません。

total_paidの金額は正しくありません。これは、すべての請求書ではなく、最後の請求書の合計です。

SELECT
  COUNT( * ) AS count,
  SUM( invoice_amount_total ) AS total,
  (SELECT
     SUM( amount ) AS total
   FROM `invoice_payments`
   WHERE `invoice_id` = s.id) AS total_paid
FROM sales_invoices AS s
WHERE s.administration_id = 3
    AND (`invoice_amount_total` <> (SELECT
                      SUM( `amount` ) AS sum
                    FROM `invoice_payments`
                    WHERE `invoice_id` = s.id)
      OR (SELECT
        SUM( amount ) AS sum
          FROM `invoice_payments`
          WHERE `invoice_id` = s.id)IS NULL)

何か案は?

4

0 に答える 0