[英]SQL SELECT showing records only if the number of records is greater than N
[英]SQL - with only showing a value greater than 0
我对 SQL 相当陌生。 我写出了我的代码,我在其中显示了供应商名称和他们所有发票的应付总额。 我的问题是,我只需要显示总额超过 0.00 美元的供应商。 任何见解将不胜感激。
SELECT DISTINCT VENDOR_NAME, TO_CHAR(SUM(INVOICE_TOTAL-PAYMENT_TOTAL-CREDIT_TOTAL), '$999,999.99') AS AMTDUE
FROM AP.VENDORS, AP.INVOICES
WHERE AP.VENDORS.VENDOR_ID = AP.INVOICES.VENDOR_ID
GROUP BY VENDOR_NAME;
代码显示:
使用having
子句:
SELECT VENDOR_NAME,
TO_CHAR(SUM(INVOICE_TOTAL-PAYMENT_TOTAL-CREDIT_TOTAL), '$999,999.99') AS AMTDUE
FROM AP.VENDORS V JOIN
AP.INVOICES I
ON V.VENDOR_ID = I.VENDOR_ID
GROUP BY VENDOR_NAME
HAVING SUM(INVOICE_TOTAL - PAYMENT_TOTAL-CREDIT_TOTAL) > 0;
笔记:
FROM
子句中使用逗号。JOIN
语法。I.
.HAVING 子句通常与 GROUP BY 子句一起使用,以根据指定的条件列表过滤组
SELECT DISTINCT VENDOR_NAME, TO_CHAR(SUM(INVOICE_TOTAL-PAYMENT_TOTAL-CREDIT_TOTAL), '$999,999.99') AS AMTDUE
FROM AP.VENDORS, AP.INVOICES
WHERE AP.VENDORS.VENDOR_ID = AP.INVOICES.VENDOR_ID
GROUP BY VENDOR_NAME
HAVING SUM(INVOICE_TOTAL - PAYMENT_TOTAL-CREDIT_TOTAL) > 0;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.