用户在文本编辑器中,输入文字。如何使用 sql 查询那段文字中是否存在关键字?
认证高级PHP讲师
你所說的應該屬於全文檢索。 MYSQL只有MYISAM支援全文檢索,且不支援中文。有其他第三方的方法搜尋引擎加MYSQL配合可以達到高效能全文檢索方案。 具體可以參考:http://wenku.baidu.com/link?u...
可否 講需求描述細緻一些? 你想做一個什麼樣的功能需求?
你說的是全文索引,Mysql5.7 中InnoDB支援全文索引(其它版本不知道),並且內建了ngram全文檢索插件,用來支援中文分詞。
建立表格時 :FULLTEXT (字段1,字段2) WITH PARSER ngram查詢時:
FULLTEXT (字段1,字段2) WITH PARSER ngram
SELECT COUNT(*) FROM table1 WHERE MATCH (字段1,字段2) AGAINST ('关键词');
更詳細的可以看下官網
額,可以用做elasticsearch做搜索,當然這個不屬於mysql了。 mysql本身就是用來做儲存的,複雜的搜尋分詞什麼的,還是用專業的吧,很多電商也都用這個。
elasticsearch
你所說的應該屬於全文檢索。
MYSQL只有MYISAM支援全文檢索,且不支援中文。有其他第三方的方法搜尋引擎加MYSQL配合可以達到高效能全文檢索方案。
具體可以參考:
http://wenku.baidu.com/link?u...
可否 講需求描述細緻一些? 你想做一個什麼樣的功能需求?
你說的是全文索引,Mysql5.7 中InnoDB支援全文索引(其它版本不知道),並且內建了ngram全文檢索插件,用來支援中文分詞。
建立表格時 :
FULLTEXT (字段1,字段2) WITH PARSER ngram
查詢時:
更詳細的可以看下官網
額,可以用做
elasticsearch
做搜索,當然這個不屬於mysql了。 mysql本身就是用來做儲存的,複雜的搜尋分詞什麼的,還是用專業的吧,很多電商也都用這個。