我正在尝试执行以下查询:

    SELECT
(
    SELECT
    COUNT(*)
    FROM
    pl_invoices
    JOIN
    pl_invoice_articles
    ON
    pl_invoices.invoice_id = pl_invoice_articles.invoice_article_invoice_id
    WHERE
    pl_invoices.invoice_amount_paid = SUM(pl_invoice_articles.invoice_article_price)
) as 'Aantal Betaald'


因此:我需要知道已支付了多少张发票,但是知道的唯一方法是将所有发票项目的总和与已支付的总金额进行比较。

此查询不起作用,我不知道我在做什么错。有谁可以帮助我吗?

提前谢谢了!

最佳答案

使用Have子句代替where

SELECT cnt as 'Aantal Betaald' from (
    SELECT COUNT(*) AS CNT, invoice_amount_paid  FROM  pl_invoices pl JOIN pl_invoice_articles pla
    ON     pl.invoice_id = pla.invoice_article_invoice_id
    having     pl.invoice_amount_paid = SUM(pla.invoice_article_price)
) tt  ;

关于mysql - 连接表中列的MYSQL SUM,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38245428/

10-14 19:15
查看更多