我有一个longblob列,该列存储一些记录的文本数据和其他记录的二进制数据。我的数据库设置为不区分大小写。有没有办法写这样的选择
select * from myTable where blobCol like '%example%'
这样,结果中包含“示例”和“示例”文字的地方?
最佳答案
我真的不知道“我的数据库设置为不区分大小写”在您的情况下是什么意思,但是如果您要使用不区分大小写的搜索,那么我认为最佳实践是将字符串转换为小写然后进行比较:select * from myTable where LOWER(blobCol) like '%example%'
此代码将找到以下所有字符串:example,Example,EXAMPle,...示例
更新:
我还根据要求添加了从Blob到文本的转换:
select * from myTable where LOWER( CONVERT(blobCol USING utf8) ) like '%example%'
关于mysql - 如何从MySQL longblob中选择文本数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47772574/