美文网首页
mysql 全文模糊搜索MATCH AGAINST方法

mysql 全文模糊搜索MATCH AGAINST方法

作者: BestFei | 来源:发表于2019-11-21 15:19 被阅读0次

ySQL 4.x以上提供了全文检索支持 MATCH ……AGAINST 模式(不区分大小写)
前提:建立全文索引的表的存储引擎类型必须为MyISAM

新建一个utf8 MyISAM类型的表并建立一个全文索引 :

CREATE TABLE articles (
    id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
    title VARCHAR(200),
    body TEXT,
    FULLTEXT (title,body)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8mb4

其中FULLTEXT(title, body) 给title和body这两列建立全文索引,之后检索的时候注意必须同时指定这两列。

全文检索语法
+ 表示AND,即必须包含。- 表示NOT,即不包含。

SELECT * FROM articles WHERE MATCH (title,body)     AGAINST ('+apple -banana' IN BOOLEAN MODE);  

apple和banana之间是空格,空格表示OR,即至少包含apple、banana中的一个。

SELECT * FROM articles WHERE MATCH (title,body)     AGAINST ('apple banana' IN BOOLEAN MODE);  

相关文章

网友评论

      本文标题:mysql 全文模糊搜索MATCH AGAINST方法

      本文链接:https://www.haomeiwen.com/subject/surtwctx.html