MySQL 如何按特定字符串排序
首先创建一个表 −
mysql> create table DemoTable
-> (
-> FirstName varchar(100)
-> );
Query OK, 0 rows affected (0.53 sec)
使用插入命令将一些记录插入表中 −
mysql> insert into DemoTable values('John');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('Adam');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('Sam');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable values('Johnny');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('Joy');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Jace');
Query OK, 1 row affected (0.20 sec)
使用select语句显示表中的所有记录 −
mysql> select *from DemoTable;
阅读更多:MySQL 教程
输出
将产生以下输出 −
+-----------+
| FirstName |
+-----------+
| John |
| Adam |
| Sam |
| Johnny |
| Joy |
| Jace |
+-----------+
6 rows in set (0.00 sec)
以下是按特定字符串排序的查询。 假设您需要首先按子字符串 ‘Jo’ 排序 −
mysql> select *from DemoTable
-> order by case when substring(FirstName, 1, 2) = 'Jo' then 0 else 1 end;
输出
将产生以下输出 −
+-----------+
| FirstName |
+-----------+
| John |
| Johnny |
| Joy |
| Adam |
| Sam |
| Jace |
+-----------+
6 rows in set (0.00 sec)
极客教程