Ho avuto query che utilizzavano la corrispondenza con l'e-mail che ha iniziato a non riuscire quando sono passato a innodb poiché @ viene utilizzato per cercare parole a una certa distanza in InnoDB:
SELECT username FROM users WHERE MATCH(user_email) AGAINST('example@sqldat.com' IN BOOLEAN MODE);
ERROR 1064 (42000): syntax error, unexpected '@', expecting $end
SELECT username FROM users WHERE MATCH(user_email) AGAINST("example@sqldat.com" IN BOOLEAN MODE);
ERROR 1064 (42000): syntax error, unexpected '@', expecting $end
mysql>
Prova a racchiudere il tuo indirizzo email in questo modo:
SELECT username FROM users WHERE MATCH(user_email) AGAINST('"example@sqldat.com"' IN BOOLEAN MODE);
o sfuggito:
SELECT username FROM users WHERE MATCH(user_email) AGAINST('\"example@sqldat.com\"' IN BOOLEAN MODE);