从表中获取某一列的十大列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从表中获取某一列的十大列表相关的知识,希望对你有一定的参考价值。

我想从mysql数据库的表中获得某种前十名列表。这是一个例子。假设我有这张表:

ID  Username    Town
 1  foo         Munich
 2  bar         Kolding
 3  herp        Bordeaux
 4  derp        Bordeaux
 5  test        Cologne
 6  bla         Munich
 7  blob        Bordeaux

现在,我想获得'Town'中最常见的条目,如下所示:

Bordeaux  3
Munich    2
Cologne   1
Kolding   1

什么样的查询可以做到这一点?

答案

这个怎么样。

SELECT Town, Count(1) as TownCount 
FROM myTable 
GROUP BY Town
ORDER BY TownCount DESC;

如果您只想要10条记录,请使用

SELECT Town, Count(1) as TownCount 
FROM myTable 
GROUP BY Town
ORDER BY TownCount DESC
LIMIT 10;
另一答案
SELECT Town, COUNT(*) AS cnt FROM my_table GROUP BY Town ORDER BY cnt DESC LIMIT 10
另一答案

试试这个 -

SELECT town,
       count(*)
FROM tablename
GROUP BY town;

以上是关于从表中获取某一列的十大列表的主要内容,如果未能解决你的问题,请参考以下文章

从dataset表中获取某一列的所有值方法

sql语句查询一个表中某一列的相同数据

mysql 删除表中某一列的数据及删除某一列的方法

mysql 把表中某一列的内容合并为一行

用python自动复制粘贴excel表里某一列的数据到另一个表中

推动从表中选择一列