如何使用Like语句从mysql中的表中获取加密值?

如何使用Like语句从mysql中的表中获取加密值?,mysql,encryption,sql-like,Mysql,Encryption,Sql Like,如何在mysql加密列中使用like语句 我需要从一个表中获取用户id,其中用户名类似于某个值(用户给定的输入)。但是我的用户名列是本地加密的,并存储在数据库中。 现在,如何使用like语句从DB中获取解密值。 我在搜索方法中使用Like语句从匹配它的表中获取值,但值在表中加密 例如: vi-68726rgur4746r279267(加密类型db中的名字) 当我在搜索框中键入vi时,以单词vi开头的所有内容都应该从数据库中获取。如果不先对加密列进行解密,则无法对其进行搜索 Select * Fr

如何在mysql加密列中使用like语句

我需要从一个表中获取用户id,其中用户名类似于某个值(用户给定的输入)。但是我的用户名列是本地加密的,并存储在数据库中。 现在,如何使用like语句从DB中获取解密值。 我在搜索方法中使用Like语句从匹配它的表中获取值,但值在表中加密

例如: vi-68726rgur4746r279267(加密类型db中的名字)


当我在搜索框中键入vi时,以单词vi开头的所有内容都应该从数据库中获取。

如果不先对加密列进行解密,则无法对其进行搜索

Select * From table
WHERE AES_DECRYPT(col_name,key_str) LIKE '%something%'

如果不先对加密列进行解密,则无法搜索该列。您使用哪种加密方法?我正在使用AES加密方法进行加密和解密。为什么要加密用户名?以获取匹配列。我必须首先从表中解密用户名并进行比较。你能给我看一些链接或示例吗,我尝试了你上面解释的内容,但对我无效。尝试这个链接[@Vickytried it's not working Select USER\u ID,AES\u decrypt(USER\u first\u NAME,“AES.key”)作为userimport play.api.libs.Crypto.\val encrypted\u username=encryptAES(user\u first\u name,aesKey.get)的用户名,我们通过编码加密用户名,而不是直接使用sql查询。