Mysql全文搜刮match against的用法。本站提示廣大學習愛好者:(Mysql全文搜刮match against的用法)文章只能為提供參考,不一定能成為您想要的結果。以下是Mysql全文搜刮match against的用法正文
MySQL支撐全文索引(Full-Text) 曾經良久了,今朝,fulltext是一種只實用於MyISAM表的一個索引類型,並且對界說索引列的數據類型也無限制,只能是以下三種的組合char、 varchar、text。fulltext可以在創立表的同時就一路界說好,或許在表創立完成以後,經由過程語句alter table或create index來追加索引,總之前後的後果是一樣的,然則二者的效力倒是存在很年夜差別的,年夜量的試驗證實,關於年夜數目的表來講,先加載數據再來界說全文索引的 速度要遠遠優於在一個曾經界說好全文索引的內外面拔出年夜量數據的速度。必定會問:這是問甚麼呢?其實,事理很簡略,前者只須要一次性對你的索引列表停止操 作,排序比擬都是在內存中完成,然後寫入硬盤;後者則要一條一條去硬盤中讀取索引表然後再停止比擬最初寫入,天然如許速度就會很慢。MySQL是 經由過程match()和against()這兩個函數來完成它的全文索引查詢的功效。match()中的字段稱號要和fulltext中界說的字段分歧,如 果采取boolean形式搜刮,也許可只包含fulltext中的某個字段,不須要全體列出。against()中界說的是所要搜刮的字符串和請求數據 庫經由過程哪一種形式去履行全文索引的搜刮查詢。上面經由過程一個例子分離引見一下fulltext所支撐的3中搜刮形式。
MySQL全文索引與中文分詞總結及普通的症結詞搜刮流程
http://www.tzlink.com/info/show.php?aid=4532
mysql 全文檢索 中文分詞
http://hi.百度.com/agg230/blog/item/33d3d50eada260e337d1225b.html
支撐中文的MySQL 5.1+ 全文檢索分詞插件
http://hi.百度.com/start_and_end/blog/item/6d6ab918b7d3800334fa412e.html
家用一下搜刮引擎就會發明,分詞的情形只是湧現在當整詞射中為0的情形下。
而詳細如何分詞,年夜家可以參考一下百度搜刮實驗成果:
·假如搜“徐祖寧寧”,成果為“徐祖”+“寧寧”。(搜人名的情形下,它能夠有一個百家姓辭書,主動將姓後第一個字歸前)
·搜“徐情願”,成果為“徐情願”。(解釋“情願”歸“徐”一切。同上。由於徐是姓。)
·搜“徐祖情願”,成果為“徐祖”+“情願”。(由於“情願”是詞,故“徐”只帶“祖”。)
·搜“徐祖寧高”,成果為“徐祖寧”。(由於“寧高”不是症結字,所以“寧”歸前詞一切。而“高”能夠由於是單字,為進步前詞搜刮效力故被省略。)