我有一个关键字表,我想检查字符串是否包含关键字。
String str="aaabbbccc";
TableName:keywordTable
field:id keyword
-------------------
1 ee
2 bbb
3 xx
..
------------------
我运行这个sql(在mysql 4.1中):
select * from `keywordTable` where contains(`keyword`,"aaabbbccc");
返回语法错误
如何实施呢? (在mysql 4.1和4.0中)
谢谢:)
答案 0 :(得分:3)
select *
from `keywordtable`
where 'aaabbbcccc' like CONCAT('%',`keyword`,'%')
答案 1 :(得分:0)
select *
from `keywordtable`
where `keyword` like '%aaabbbcccc%'
唯一的问题是,它搜索不区分大小写,所以AAAAAABBBCCCCCCCCDDD也将匹配
修改。我误读了,你想要反过来匹配。这样做:
select *
from `keywordtable`
where 'aaabbbcccc' like '%'+`keyword`+'%'
mysql也以相反的顺序理解like