假设我有一个类似于这样的SQL表:
--------------------
| id| name|
--------------------
| 1| Alice|
| 2| Bob|
| 3| Alice|
| 4| Alice|
| 5| Jeff|
| ...| ...|
--------------------
是否可以制定一个返回名称列表及其出现次数的查询?我通过查询所有行,删除重复计数然后排序,对此做出了解决方案;哪个有效,但看起来很乱。可以在SQL查询中加入吗?
答案 0 :(得分:1)
这是标准SQL,应该可以提供您期望的结果:
select name, count(*)
from tblName
group by name
order by name
如果您想按降序排序,可以使用:
select name, count(*)
from tblName
group by name
order by 2 DESC