SELECT *
FROM address
WHERE name LIKE 'a%' OR name LIKE '% a%' LIMIT 10
此查询检索以 a
开头的 name
或 'a%'
或者在中间的一个词中 '% a%'
。如何首先从 LIKE 'a%'
检索结果
然后 LIKE '% a%'
?
最佳答案
添加ORDER BY
子句,
SELECT *
FROM address
WHERE name LIKE 'a%' OR name LIKE '% a%'
ORDER BY CASE WHEN name LIKE 'a%' THEN 0 ELSE 1 END
LIMIT 10
关于mysql - 两个 LIKE 条件,但首先从一个条件中检索,然后从另一个条件中检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16028185/