正如我在很多地方閱讀過的,ngram索引可以改善單詞搜索。 在這篇舊文章中,它說它可以適用於mysql,但它不會說如何:levenshtein alternativemysql ngrams索引示例
任何人都可以把一些例子,因爲你可以在MySQL中使用這種技術?
可以使用這種技術來提高mysql的levenshtein函數的性能嗎?
我需要的是找到近似的文字(如萊文斯坦)
在我使用萊文斯坦()和levenshtein_ratio()函數從MI測試: http://www.artfulsoftware.com/infotree/qrytip.php?id=552
SELECT *, levenshtein_ratio('stacoverflou',words_column) AS ratio
FROM my_table
ORDER BY ratio DESC
提高性能(假設沒有拼寫錯誤第一個字母)
SELECT *, levenshtein_ratio('stacoverflou',words_column) AS ratio
FROM my_table
WHERE words_column LIKE 's%'
ORDER BY ratio DESC
另外我發現這個PHP庫的建設ngrams: https://gist.github.com/Xeoncross/5366393
但我不知道如何在MySQL中使用這些n元語法