bạn có thể thử truy vấn Top-N để tìm ứng cử viên đầu tiên, sau đó chỉ áp dụng ứng viên đó cho mẫu thực tế:
select 1
from (select c1
from junk
where c1 <= 'fxg87698x84'
order by c1 desc limit 1) tmp
where 'fxg87698x84' like concat(c1, '%');
truy vấn top-n nên sử dụng chỉ mục thông thường trên c1.
CHỈNH SỬA :Đã giải thích điều đó chi tiết hơn trong blog của tôi: http://blog.fatalmind.com/2010/09/29/finding-the-best-match-with-a-top-n-query/