MySql SELECT 带有 where LIKE 的语句不返回结果

MySql SELECT statement with where LIKE not returning results

当我包含 WHERE LIKE.

时,

MySql 语句没有 return 任何结果

声明:

SELECT aes_decrypt(SchoolName, 'MyString') as SchoolName from SchoolList Where aes_decrypt(SchoolName, 'MyString') LIKE '% Part of School Name Here%'

如果我删除 LIKE 它会起作用

SELECT aes_decrypt(SchoolName, 'MyString') as SchoolName from SchoolList Where aes_decrypt(SchoolName, 'MyString') = 'School Name Here'

您需要将 aes_decrypt 的结果转换为 char 才能使用 LIKE 运算符:

SELECT aes_decrypt(SchoolName, 'MyString') as SchoolName 
from SchoolList 
Where cast(aes_decrypt(SchoolName, 'MyString') as CHAR) LIKE '% Part of School Name Here%'

看这个例子:https://www.db-fiddle.com/f/m1ynqMzVqSs5yTeTmrqUbP/1