【发布时间】:2020-05-31 06:38:04
【问题描述】:
我有以下代码:
SELECT gl.account_description AS invoice_total, COUNT(ili.invoice_id) AS total_invoice,
SUM(ili.line_item_amount) AS total_convert
FROM general_ledger_accounts gl JOIN
invoice_line_items ili
ON gl.account_number = ili.account_number JOIN
invoices i
ON ili.invoice_id = i.invoice_id
GROUP BY gl.account_description, i.invoice_date, ili.account_number
HAVING i.invoice_date BETWEEN '2014-04-01' AND '2014-06-30' AND
COUNT(ili.account_number) > 1
ORDER BY account_description DESC;
在我的查询中,我应该返回 10 行数据,而我只有 7 行返回,而且没有一个包含正确的信息。我应该返回的是 general_ledger_accounts 表中的 account_description 列,invoice_line_items 表中的项目计数,invoice_line_items 表中具有相同帐号的 line_item_amount 列的总和。它应该只在日期“2014-04-01”和“2014-06-30”之间的发票中搜索。我应该加入发票表。
谁能看出我在语法上做错了什么来得到错误的结果?
【问题讨论】:
标签: mysql sql select aggregate-functions