我有MYSQL查询:
SELECT * FROM user WHERE name LIKE '%ana%'
OR name LIKE '%adam%'
OR name LIKE '%pit%'
是否可以通过OR序列订购结果
我的意思是首先显示名称为LIKE '%ana%'
的结果
名称LIKE '%adam%' as second
名称LIKE '%pit%' as third
。
答案 0 :(得分:2)
首先,对IN
子句使用where
(你没有通配符,所以这实际上更有效率):
where name in ('ana', 'adam', 'pit')
其次,使用find_in_set()
进行排序:
order by find_in_set(name, 'ana', 'adam', 'pit')
答案 1 :(得分:0)
order by if(name like 'ana', 1, if(name like 'adam', 2, 3))