美文网首页我爱编程
【MySQL必知必会】第18章:全文本搜索

【MySQL必知必会】第18章:全文本搜索

作者: 100gle | 来源:发表于2018-04-11 23:53 被阅读27次

    关联章节:

    通配符与正则表达式搜索都存在着一些性能上的限制,但是这些限制都可以通过全文本搜索来解决。在使用全文本搜索时,MySQL不需要分别查看并分析和处理每个行,只需要给各词创建索引,进行快速的匹配。

    18.1 启用全文本索引支持

    一般而言在创建表时给出全文本搜索的限定,这需要用FULLTEXT来实现:

    CREATE TABLE productnotes
    (
        note_id     int     NOT NULL AUTO_INCREMENT,
        prod_id     char(10)    NOT NULL,
        note_date   datetime    NOT NULL,
        note_text   text    NULL,
        PRIMARY KEY(note_id),
        FULLTEXT(note_text)
    )ENGINE=MyISAM;
    
    
    • 不要在导入数据时使用FULLTEXT,应该先在读取所有数据后再修改表定义FULLTEXT

    18.1.1 全文本搜索

    建立好索引后,使用Match函数和Against函数执行全文本搜索:Match函数指定搜索的列,Against指定要使用的搜索表达式

    
    SELECT note_text
    FROM productnotes
    WHERE Match(note_text) Against('rabbit');
    

    18.2 其他形式的文本搜索

    除了基本的全文本搜索之外,还有全文本查询扩展、布尔文本搜索等。

    相关文章

      网友评论

        本文标题:【MySQL必知必会】第18章:全文本搜索

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