可能重复:
Oracle SQL - How to Retrieve highest 5 values of a column
嘿所以我有一个查询来做到这一点: 编写一个查询,该查询仅检索六个月内拾取次数最多的十家公司 我已经给了6个月,我尝试了很多查询,这就是我所拥有的,但我知道它的错误,因为我不知道
SELECT * FROM
(SELECT customers.name,COUNT(MANIFEST.MANIFEST_BARCODE) AS Pickups
FROM customers JOIN manifest ON (Reference = pickup_reference)
ORDER BY Pickups desc;)
WHERE ROWNUM < 11
答案 0 :(得分:1)
没有看到你的表结构等我不知道六个月的限制在哪里,但是对于其余的你有一个没有count
子句的聚合函数(group by
),并且内部查询中的随机分号。这样的事情应该有效,并且接近你已经拥有的东西:
SELECT * FROM (
SELECT customers.name, COUNT(manifest.manifest_barcode) AS Pickups
FROM customers
JOIN manifest ON (Reference = pickup_reference)
GROUP BY customers.name
ORDER BY pickups DESC
)
WHERE ROWNUM < 11;
此网站上有很多示例,例如this one。