Dùng CASE WHEN ... THEN ... trong ORDER BY để ưu tiên kết quả khớp đầu, giữa, cuối.
Tạo bảng UserName, chèn 5 tên có từ 'Carol'.
Truy vấn:
mysql> select max(UserId)as Id,UserName from OrderByRelevance -> where UserName like '%Carol%' group by UserName -> order by case when UserName like 'Carol%' THEN 0 -> WHEN UserName like '% %Carol% %' THEN 1 -> WHEN UserName like '%Carol' THEN 2 -> else 3 end, UserName;
Kết quả thứ tự: Carol Adams, Carol Smith, Carolnathan Todd, Sam Carol Bond.