MySQL中的高级排序功能,即使在ORDER BY之后也显示以J开头的字符串

为此,请使用ORDER BY LIKE运算符。让我们首先创建一个表-

mysql> create table DemoTable
(
   Name varchar(100)
);

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable values('John');
mysql> insert into DemoTable values('Adam');
mysql> insert into DemoTable values('Chris');
mysql> insert into DemoTable values('Jace');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('Sam');

使用select语句显示表中的所有记录-

mysql> select *from DemoTable;

这将产生以下输出-

+-------+
| Name  |
+-------+
| John  |
| Adam  |
| Chris |
| Jace  |
| David |
| Sam   |
+-------+
6 rows in set (0.00 sec)

以下是即使在ORDER BY之后仍显示以J开头的字符串的查询-

mysql> select *from DemoTable order by Name like '%J%',Name;

这将产生以下输出-

+-------+
| Name  |
+-------+
| Adam  |
| Chris |
| David |
| Sam   |
| Jace  |
| John  |
+-------+
6 rows in set (0.00 sec)