sql >> Database >  >> RDS >> Mysql

Mysql selecteer op beste match met like

U kunt de resultaten gemakkelijk ordenen op het aantal overeenkomsten:

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'))
         );

Dit werkt voor jouw voorbeeld.



  1. SQL Server Geheel getal converteren naar binaire tekenreeks

  2. Strings splitsen:een vervolg

  3. Hoe kan ik voorbereide verklaringen in CodeIgniter gebruiken?

  4. SQL Server 2016:een opgeslagen procedure maken