我讀過關於mysql中的全文搜索功能。但在這些方法中,您必須搜索完全正確的拼寫完整的單詞。Mysql全文搜索 - 搜索關鍵字的一部分
例如,如果您的文本包含 '2009年的Bitdefender',你搜索一下,你什麼也得不到
SELECT * FROM日誌WHERE MATCH(日誌)AGAINST( '位09' IN BOOLEAN MODE);
那麼有沒有解決方案呢?
(是否有這將讓你尋找拼錯的關鍵字,以及一個技術?比如你搜索Bitdefedner)
我讀過關於mysql中的全文搜索功能。但在這些方法中,您必須搜索完全正確的拼寫完整的單詞。Mysql全文搜索 - 搜索關鍵字的一部分
例如,如果您的文本包含 '2009年的Bitdefender',你搜索一下,你什麼也得不到
SELECT * FROM日誌WHERE MATCH(日誌)AGAINST( '位09' IN BOOLEAN MODE);
那麼有沒有解決方案呢?
(是否有這將讓你尋找拼錯的關鍵字,以及一個技術?比如你搜索Bitdefedner)
你也可以轉向Lucene或其他專業搜索引擎中提到的https://stackoverflow.com/questions/553055/best-full-text-search-for-mysql
你可能需要的LIKE
,REGEXP
,AGAINST
或SOUNDEX
功能的幫助。
看一看下面:
http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html
http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html#operator_like
http://dev.mysql.com/doc/refman/5.0/en/regexp.html#operator_regexp
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_soundex
您可以使用通配符* AGAINST( '位* 09' IN布爾MODE)
對於拼寫錯誤關鍵字,您需要單獨的拼寫檢查階段。