そのため、文字列値 (サードパーティ ツールから入力されたキーワード) を含むテーブルに列があります。私は、おそらく単一の値に正規化できる類似の値のクラスターを識別する自動ツールに取り組んでいます。たとえば、「Firemen」/「Fireman」、「Isotope」/「Asotope」、「Canine」/「Canines」などです。
レーベンシュタイン距離を計算するアプローチは、文字列の操作/比較が多すぎて、SQL インデックスを十分に活用できない可能性があるという事実を除けば、理想的です。
列の Left(X) 文字でインクリメンタルにグループ化することを検討しました。これは、インデックスの使用を最大化するためのそれほど悪くない方法ですが、このアプローチは、単語の最後に違いがある単語を見つける場合にのみ効果的です。 .
SQL でこの問題を効率的に解決するための良いアイデアはありますか?
注: この質問は ( Finding how similar two strings are ) と非常によく似ていますが、ここでの違いは、SQL でこれを効率的に行う必要があることです。