我有一个数据库,其中相关列中的所有数据都是十六进制格式说的,对于单词ABSENT我们有数据IN十六进制格式414453454e54
我想以十六进制格式对具有特定文本的记录进行搜索(SELECT ..... LIKE'%414453454e54%'
如何以非区分大小写的方式搜索此类关键字“414453454e54”的记录。意味着搜索414453454e54(即ABSENT)应返回包含任何情况下的ABSENT(缺席,缺席)或混合情况(缺席)的所有记录,abseNt)以十六进制格式。
我已尝试使用UPPER(),LOWER()以及许多可在NET上使用的选项,而不是以HEXADECIMAL格式工作。
等待快速解决方案
答案 0 :(得分:1)
您可以使用MySQL的unhex()方法,并在where子句中将其转换为char。
像这样:
SELECT
col
FROM
table
WHERE
CAST(UNHEX(col) AS CHAR) LIKE '%ABSENT%'
请注意,这不是非常友好的表现。你的表所拥有的记录越多,它就会越来越慢。