小编cir*_*iro的帖子

mysql - 按 where 子句中的第一个条件排序

我有一个表由以下字段组成

id, name
Run Code Online (Sandbox Code Playgroud)

具有以下值

1, ciro
2, test ciro
3, ciprox
4, other
5, other
Run Code Online (Sandbox Code Playgroud)

我想获得所有以“ci”开头或包含“ci”的值,但在它们以ci开头然后其余部分之前向我显示结果。

查询

select * FROM table WHERE name like 'ci%' or name like '%ci%' order by name;
Run Code Online (Sandbox Code Playgroud)

我回来了

1, ciro
2, test ciro
3, ciprox
Run Code Online (Sandbox Code Playgroud)

我想要

1, ciro
3, ciprox
2, test ciro
Run Code Online (Sandbox Code Playgroud)

因此在名称以“ci”开头的行之前,然后是那些包含

有没有办法不使用两个查询来获得结果?

mysql order-by like

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

like ×1

mysql ×1

order-by ×1