Php 如何对mysql结果进行排序,但首先显示具体结果

Php 如何对mysql结果进行排序,但首先显示具体结果,php,mysql,Php,Mysql,我有一张像这样的桌子 id name 1 John 2 Mike 3 Zed 4 Teacher 5 Aaron ........... 如何进行mysql查询以按名称按ASC顺序获取行,但将“Teacher”放在顶部或以“Teacher”开头的内容 对于MySQL,下面的代码可以工作,因为它返回0表示false和1表示true select * from your_table order by name <> 'Teacher',

我有一张像这样的桌子

id    name
1     John
2     Mike
3     Zed
4     Teacher
5     Aaron
...........
如何进行mysql查询以按名称按ASC顺序获取行,但将“Teacher”放在顶部或以“Teacher”开头的内容

对于MySQL,下面的代码可以工作,因为它返回
0
表示
false
1
表示
true

select * from your_table
order by name <> 'Teacher',
         name 
从您的_表中选择*
按“老师”的名字排序,
名称
使用函数

以教师开头的名字将按字母顺序排列在最上面,然后是其他名字。 范例


哇!我在互联网上到处寻找,终于找到了解决办法。按案例名称订购非常有效!
select * from your_table
order by name <> 'Teacher',
         name 
SELECT * FROM table ORDER BY FIELD(`name`,'Teacher') ASC
select * from table order by case when name like "Teacher%" then 1 else 2 end,name 
Teacher
Teacher Aaron
Teacher Zed
Aaron
Zed