mysql - MySql SELECT 语句,其中 LIKE 不返回结果
问题描述
当我包含时,MySql 语句不返回任何结果WHERE LIKE
。
陈述:
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
推荐阅读
- sql - 我和我的团队如何在 ASP.NET 中的同一台服务器和同一数据库上工作?
- visual-studio-code - 从 Visual Studio Code 中删除 MDN 引用
- cucumberjs - 如果正在使用特定标签,是否可以忽略黄瓜钩
- slack-api - Slack API 无效块
- c++ - C++ 类中的函数问题(LNK2019 和 LNK1120 错误)
- react-native - 反应原生 | 在函数之间传递钩子
- javascript - MapStateToProps 到同步上下文中的组件状态
- windows - 如何在内核模式下捕获 Etw?
- java - Kafka Avro 使用模式注册表将序列化/反序列化为具体类型失败
- hibernate - 带有 Mysql 数据源的 Keycloak 示例 - 原因:java.lang.ClassNotFoundException:无法加载请求的类:com.mysql.cj.jdbc.Driver