0

受け取る請求書の支払いの合計を取得する mysql クエリがあります。

SELECT
SUM(amount * ((vat / 100) + 1)) AS total
FROM invoices
WHERE status = 'send' AND date_paid = 0

受け取った金額が保存される別のテーブルがあります。一部が支払われた請求書を処理して、実際の受取額を確認するにはどうすればよいですか? 私は、payments_rev という名前の支払いと、invoice_id と amount の列を格納するテーブルを使用しています。

私が試してみました:

SELECT
SUM(amount * ((vat / 100) + 1)) AS total,
SUM(pd.amount) AS total_paid
FROM invoices AS inv
LEFT JOIN 11_invoices_paid AS pd
ON pd.inv_id = inv.id
WHERE inv.status = 'send' AND inv.date_paid = 0
GROUP BY inv.id

その結果、total_paid = 0 ?? が得られます。

CREATE TABLE IF NOT EXISTS `invoices` (
  `id` int(6) NOT NULL AUTO_INCREMENT,
  `dossier_id` int(6) NOT NULL,
  `invoice_no` int(5) NOT NULL,
  `amount_excl` decimal(8,2) NOT NULL,
  `vat` int(2) NOT NULL,
  `date_send` date NOT NULL,
  `date_pay` date NOT NULL,
  `date_paid` date NOT NULL,
  `status` varchar(10) NOT NULL
  PRIMARY KEY (`id`)

)

CREATE TABLE IF NOT EXISTS `invoices_paid` (
  `id` int(6) NOT NULL AUTO_INCREMENT,
  `invoice_id` int(6) NOT NULL,
  `amount` decimal(8,2) NOT NULL,
  `date` date NOT NULL
  PRIMARY KEY (`id`)

)

4

0 に答える 0