我正在尝试在我的数据库中搜索一个字符串,但它应该能够匹配任何单词而不是整个短语.
假设,表数据的文本类似于b c d e f g.然后,如果我搜索d c b,它应该能够显示结果.
字段LIKE’%d c b%’不能以这种方式工作.
解决方法:
为获得最佳结果,您需要为数据创建FULLTEXT索引.
CREATE TABLE mytable (id INT NOT NULL, data TEXT NOT NULL, FULLTEXT KEY fx_mytable_data) ENGINE=MyISAM
SELECT *
FROM mytable
WHERE MATCH(data) AGAINST ('+word1 +word2 +word3' IN BOOLEAN MODE)
请注意,要索引单字母单词(如示例所示),您需要在MysqL配置中将ft_min_word_len设置为1.
即使您没有索引(只要您的表是MyISAM),此语法也可以工作,但速度很慢.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。