-1

假设我有以下值的表

A         B           C
------------------------
5        ABC         $20
3        BCD         $40
5        BCD         $40
2        ABC         $20
5        ABC         $30

如何编写将返回最大值计数的查询,假设对于列 A,它应该返回值 3,即最大值的计数为 5。

4

3 回答 3

4

您可以使用这样的子查询:

SELECT COUNT(*) AS COUNTS FROM Table1
WHERE A = (SELECT MAX(A) AS AD FROM Table1)

看到这个 SQLFiddle

于 2012-10-30T04:29:25.887 回答
2

虽然不那么典型,但这也适用

(不等式的自反连接)

SELECT 
    COUNT(t1.a) AS COUNTS 
FROM Table1 t1
   LEFT JOIN Table1 t2
    ON t1.A < t2.A
WHERE 
      t2.a is null

演示

于 2012-10-30T04:35:54.857 回答
2

一种方法(不确定它是最快的):

SELECT A, count(*) FROM my_table GROUP BY 1 ORDER BY 2 LIMIT 1;
于 2012-10-30T04:22:28.387 回答