晚上好,
我想在数据库(80000行)中搜索,两行使用'full-text-Boolean-magic'。 这种情况有一段时间非常好,所以Index已经开启,一切都应该如此。
现在,因为de数据是荷兰语,法语或英语,我希望能够即时翻译它。同样,这就像一个魅力(Woooo Google,Houray Microsoft)。
所以,说我想搜索“奶酪”这个词,脚本开始翻译并搜索奶酪,咖啡和奶酪......(嗯,带上它!)
这看起来像这样:
SELECT * FROM archief WHERE MATCH(description, keywords) AGAINST('(+cheese) (+kaas) (+cheese) (+fromage)' IN BOOLEAN MODE) AND showa = '1' AND rel_date <= '20110620' ORDER BY datetaken desc LIMIT 50
和是,这有效
但是,比如说,我想寻找'蓝芝士'
SELECT * FROM archief WHERE MATCH(description, keywords) AGAINST('(+blauwe +kaas) (+blauwe +kaas) (+blue +cheese) (+fromage +bleu)' IN BOOLEAN MODE) AND showa = '1' AND rel_date <= '20110620' ORDER BY datetaken desc LIMIT 50
我用蓝色OR奶酪得到了结果,嘿,我在单词之前使用'+'运算符!?
使用引号来表示他的工作:
SELECT * FROM archief WHERE MATCH(description, keywords) AGAINST('("blauwe kaas") () () ()' IN BOOLEAN MODE) AND showa = '1' AND rel_date <= '20110620' ORDER BY datetaken desc LIMIT 50
当然,这不是搜索数据库的好选择。
所以我的朋友们,我在这里错过了什么,为什么'plus'操作员不工作?
感谢您的关注和未来的解决方案!!
Ĵ