如何计算SQL表中不同类型的事物的数量?

时间:2014-05-30 01:10:19

标签: mysql sql

我有一个存储一组交易的表

Customer | Flavor | Date Purchased | Location | blah | blah
Anna     | Apple  | 2014-01-01     | Seattle  | 1    | 0
Anna     | Grape  | 2014-01-01     | Seattle  | 1    | 0
...

我希望能够选择每个客户尝试的不同口味的数量。

...一样

Who   | Number of flavors tried
Anna  | 4
Beth  | 1
Cathy | 100

它让我的大脑变成了一个结。我如何分组/加入/?我的胜利之路?

2 个答案:

答案 0 :(得分:4)

如果按customer进行分组,则count()等聚合函数将应用于每个组,而不是完整的结果集。

distinct也只计算不同的风格。

select customer, 
       count(distinct flavor) as `number of flavors tried`
from your_table
group by customer

答案 1 :(得分:1)

试试这个:

SELECT Customer,COUNT(distinct Flavor) FROM table GROUP BY Customer;