SQL:一个查询中的计数计数

时间:2012-05-08 09:10:40

标签: sql count subquery aggregate-functions

SQL语法中是否有直接的方法在没有子查询的单个查询中编写它?那种表现有增无减的可能性吗?

SELECT ProductCount, COUNT(*) as Occurence
FROM (
    SELECT OrderID, COUNT(DISTINCT ProductID) as ProductCount
    FROM OrderLine
    GROUP BY OrderID
) X
GROUP BY ProductCount
ORDER BY ProductCount

1 个答案:

答案 0 :(得分:1)

  1. 建议的方法是提出问题。

  2. 您不太可能看到任何更改带来任何性能提升。这是一个非常常见的模式,您的数据库应该很好地处理。如果速度很慢,请考虑添加适当的索引。