A correspondência não funciona com curingas iniciais, portanto, a correspondência com
*abc*
não vai funcionar. Você terá que usar LIKE
Para alcançar isto:SELECT * FROM user WHERE user_login LIKE '%abc';
Isso será muito lento no entanto.
Se você realmente precisa corresponder ao final da string e precisa fazer isso com frequência enquanto o desempenho está acabando com você, uma solução seria criar uma coluna separada na qual você inverte as strings, então você tem:
user_login user_login_rev
xyzabc cbazyx
Então, em vez de procurar por
'%abc'
, você pode procurar por 'cba%'
que é muito mais rápido se a coluna for indexada. E você pode usar novamente MATCH se quiser pesquisar por 'cba*'
. Você só terá que reverter a string de pesquisa também.