想象一下我在表1中有以下数据:
ID Color Toy
----------------------
1 Red Car
2 Red Truck
3 Red Truck
4 Blue Car
5 Blue Car
6 Yellow Airplane
我想返回每种颜色的最频繁玩具的最大数量。我该怎么做?
我尝试过
SELECT
aa.color,aa.toy,MAX(aa.totalcount) AS maxcount
FROM
(SELECT Color,Toy,COUNT(*) AS totalcount
FROM Table 1
GROUP BY Color,Toy) aa;
由于某种原因,这似乎不起作用。我在做什么错了?
这是我得到的错误:
在GROUP BY子句中未指定在SELECT子句,HAVING子句或ORDER BY子句中指定的以“ Color”开头的表达式,或者它在具有列函数的SELECT子句,HAVING子句或ORDER BY子句中且未指定GROUP BY子句。SQLCODE = -119,SQLSTATE = 42803,DRIVER = 4.25.1301
我想要的期望输出是每种颜色的玩具中最常见的一行,以及玩具/颜色组合的计数:
color toy count
-----------------------
Red Truck 2 (NOT RED CAR)
Blue Car 2
Yellow Airplane 1