Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql selecionar por melhor correspondência com gosto


Você pode facilmente ordenar os resultados pelo número de correspondências:
SELECT `id`
FROM `accounts`
WHERE AES_DECRYPT(`email`, '123') = CONCAT_WS('@', 'test', 'test.com') OR 
      AES_DECRYPT(`email`, '123') LIKE CONCAT('%','test.com')
ORDER BY ( (AES_DECRYPT(`email`, '123') = CONCAT_WS('@', 'test', 'test.com')) +
           (AES_DECRYPT(`email`, '123') LIKE CONCAT('%','test.com'))
         );

Isso funcionará para o seu exemplo.