与DESC一起使用ORDER BY以降序排列。要计算值,请使用COUNT()。例如,如果名称“ John”出现在该列中三次,则在单独的列中将显示计数3,这样,所有计数值将使用ORDER BY DESC以降序排列。
让我们首先创建一个表-mysql> create table DemoTable
-> (
-> EmployeeName varchar(100)
-> );
使用插入命令在表中插入一些记录-mysql> insert into DemoTable values('Sam');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('Chris');
mysql> insert into DemoTable values('Robert');
mysql> insert into DemoTable values('Chris');
mysql> insert into DemoTable values('Sam');
mysql> insert into DemoTable values('Sam');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('Robert');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('Chris');
使用select语句显示表中的所有记录-mysql> select *from DemoTable;
输出结果+--------------+
| EmployeeName |
+--------------+
| Sam |
| David |
| David |
| Chris |
| Robert |
| Chris |
| Sam |
| Sam |
| David |
| Robert |
| David |
| Chris |
+--------------+
12 rows in set (0.00 sec)
以下是获取值计数并按降序在新列中显示计数的查询-mysql> select EmployeeName,count(EmployeeName) as Total from DemoTable
-> group by EmployeeName
-> order by Total DESC;
输出结果+--------------+-------+
| EmployeeName | Total |
+--------------+-------+
| David | 4 |
| Chris | 3 |
| Sam | 3 |
| Robert | 2 |
+--------------+-------+
4 rows in set (0.00 sec)