mysql全文索引

2021-07-13 14:53:47 字數 743 閱讀 4568

了解 solr 之後  發現全文索引也能做檢索 故了解了下   筆記如下

建立全文索引

alter table table

add fulltext index fulltext_table(列1

,列2 ,...)

查詢方式

select * from table where match(列1

,列2 ,...) against('查詢字串')

注意: 查詢列 要完全等於建立的全文索引列

六百萬記錄的表

例如 select * from testdata where match(name2, name3,name4) against('dd84fe6c236a 231e3c6d 11e5') 查詢時間3秒多

select * from testdata where match(name2, name3,name4) against('231e3c6d') 查詢時間0.001秒

查詢字串分詞越多 越慢

cto說 他對中文索引沒有那麼高效 ... 沒去實驗了

當下或者是以後技術選型 不用 全文索引的原因 

只能在myisam表裡弄 操作鎖表 阻塞其它操作 不友好 ,還不支援事務~額這個不行,,,(實在要用myisam的環境 這個表對外只提供查詢,,插入修改之類的操作在自己的內部系統某幾個人用)

全文索引只能做高階的like用,,當以後like太慢了 且表是myisam格式 可用全文索引 ,具體的複雜的句式查詢還是solr高效

mysql全文索引的坑 MySQL全文索引問題

我有乙個包含以下資料的 文章 mysql select from articles id title body 1 mysql tutorial dbms stands for database 2 how to use mysql well after you went through a 3 o...

mysql全文索引

舊版的mysql的全文索引只能用在myisam 的char varchar和text的字段上。不過新版的mysql5.6.24上innodb引擎也加入了全文索引,所以具體資訊要隨時關注官網,create table article id int auto increment not null pri...

MySQL 全文索引

ngram就是一段文字裡邊聯絡的n個字的序列,例如ngram對生日快樂進行分詞 n 1 生 日 快 樂 n 2 生日 日快 快樂 n 3 生日快 日快樂 n 4 生日快樂 learn是資料庫 test是表名 當新增加一條資料時,會把設定全文索引的那個欄位的值進行分詞排序顯示 select from ...