MySQL 如何在单个MySQL查询中使用ORDER BY FIELD和GROUP BY
为此,让我们首先创建一个表 –
mysql> create table DemoTable
(
Message text
);
Query OK, 0 rows affected (1.15 sec)
使用insert命令在表中插入一些记录 –
mysql> insert into DemoTable values('Good');
Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable values('Bye');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Awesome');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('Bye');
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values('Good');
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable values('Amazing');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Awesome');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('Bye');
Query OK, 1 row affected (0.12 sec)
使用select语句显示来自表的所有记录 –
mysql> select *from DemoTable;
这将产生以下输出 –
+---------+
| Message |
+---------+
| Good |
| Bye |
| Awesome |
| Bye |
| Good |
| Amazing |
| Awesome |
| Bye |
+---------+
8 rows in set (0.00 sec)
以下是一条在单个MySQL查询中带有ORDER BY FIELD和GROUP BY的查询 –
mysql> select *from DemoTable
group by Message
order by field(Message,'Amazing','Awesome','Good','Bye');
这将产生以下输出 –
+---------+
| Message |
+---------+
| Amazing |
| Awesome |
| Good |
| Bye |
+---------+
4 rows in set (0.04 sec)
阅读更多:MySQL 教程
极客教程