使用单个MySQL查询对行进行计数和排序
让我们首先创建一个表-
mysql> create table DemoTable783 ( FirstName varchar(100) );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable783 values('Adam'); mysql> insert into DemoTable783 values('Chris'); mysql> insert into DemoTable783 values('Chris'); mysql> insert into DemoTable783 values('Adam'); mysql> insert into DemoTable783 values('Adam'); mysql> insert into DemoTable783 values('Robert'); mysql> insert into DemoTable783 values('Robert'); mysql> insert into DemoTable783 values('Adam'); mysql> insert into DemoTable783 values('Chris');
使用select语句显示表中的所有记录-
mysql> select *from DemoTable783;
这将产生以下输出-
+-----------+ | FirstName | +-----------+ | Adam | | Chris | | Chris | | Adam | | Adam | | Robert | | Robert | | Adam | | Chris | +-----------+ 9 rows in set (0.00 sec)
以下是对MySQL中的行进行计数和排序的查询-
mysql> select FirstName, count(*) from DemoTable783 group by FirstName order by count(*) desc;
这将产生以下输出-
+-----------+----------+ | FirstName | count(*) | +-----------+----------+ | Adam | 4 | | Chris | 3 | | Robert | 2 | +-----------+----------+ 3 rows in set (0.00 sec)