mysql - 对平均函数进行 SQL 查询

标签 mysql sql-server

我正在尝试编写一个 SQL 查询来列出发票数量超过每个供应商平均发票数量的供应商。到目前为止,我提出了两个问题,但我不确定其中一个是否正确。如果有人可以帮助我。

SELECT VENDOR_ID,COUNT(INVOICE_ID), ROUND(AVG(INVOICE_ID), 2)
FROM INVOICES
GROUP BY VENDOR_ID
HAVING COUNT(INVOICE_ID) > AVG(INVOICE_ID)
ORDER BY AVG(INVOICE_ID);

SELECT VENDOR_ID,COUNT(INVOICE_ID), ROUND(AVG(INVOICE_ID), 2)
FROM INVOICES
GROUP BY VENDOR_ID
HAVING AVG(INVOICE_ID) > (SELECT AVG(INVOICE_ID) FROM INVOICES)
ORDER BY AVG(INVOICE_ID);

最佳答案

** 根据 Arth 的评论编辑

因此每个供应商的平均发票数量为:

SELECT cast(COUNT(Invoice_ID) as float) / COUNT(DISTINCT Vendor_Id)
FROM INVOICES

现在让我们将其放入您的需求中

SELECT Vendor_Id, COUNT(Invoice_Id)
FROM INVOICES
GROUP BY Vendor_Id
HAVING COUNT(Invoice_ID) > 
              (SELECT cast(COUNT(Invoice_ID) as float) / COUNT(DISTINCT Vendor_Id) FROM INVOICES)

关于mysql - 对平均函数进行 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33565755/

相关文章:

mysql - 哪些 MySQL 命令可以使用列顺序而不是名称

从表中获取特定行时,Java JDBC 程序抛出 SQL 语法错误

c# - 并行执行 CREATE DATABASE 语句会导致错误,但不会在单独的 SQL Server 实例上发生

sql-server - SQL Server 2012 无法绑定(bind)多部分标识符

php - mysql 连接 symfony + docker

php - 与 MYSQL 和 PHP 事件日历的事件冲突

mysql - 如何从 MySQL 表中拆分 XML 值?

java - SQL Server 数据库连接错误

sql-server - Visual Studio 2010 中的数据库设计器

sql - 在 SQL Server 中连接列值