假设我有一个包含以下值的表格。
Ford
Ford
Ford
Honda
Chevy
Honda
Honda
Chevy
所以我想构造以下输出。
Ford 3
Honda 3
Chevy 2
它只需要列中每个元素的计数。
我遇到了列出唯一列的问题。
谁能告诉我怎么做?
我与UNIQUE
和DISTINCT
混淆了,但我无法做到
获取左侧的值列表。
答案 0 :(得分:44)
你是说这个吗?
select car_made, count(*) from cars
group by car_made
答案 1 :(得分:3)
select car_made, count(*) as occurrences
from cars
group by car_made
order by occurrences desc, car_made
答案 2 :(得分:1)
SELECT ... GROUP BY
http://dev.mysql.com/doc/refman/5.0/en/select.html
例如:
SELECT CarName, COUNT(CarName) AS CarCount FROM tbl GROUP BY CarName
答案 3 :(得分:0)
希望这对您有用!
SELECT car_brand, COUNT(id) from cars
GROUP BY car_brand
使用InnoDB的COUNT(id)比COUNT(*)快,因为InnoDB不缓存行数。