SOUNDEX (Transact-SQL)
2 つの文字列の類似性を評価する 4 文字 (SOUNDEX) コードを返します。
構文
SOUNDEX ( character_expression )
引数
character_expression
英数字で構成される文字式です。character_expression には、定数、変数、または列を指定できます。
戻り値の型
varchar
解説
SOUNDEX は、発音の似た単語や名前を見つけるために、英数字の文字列を 4 文字のコードに変換します。コードの先頭の文字は character_expression の先頭の文字で、コードの 2 番目から 4 番目までの文字は数字です。character_expression の中の母音は、これが文字列の先頭の文字である場合を除いて無視されます。文字列関数は入れ子にすることができます。
例
次の例では、SOUNDEX 関数、およびこれに関連した DIFFERENCE 関数を示しています。最初の例では、標準 SOUNDEX
値がすべての子音に対して返されます。Smith
および Smythe
に対する SOUNDEX
の結果は、母音、文字 y
、合字、および文字 h
は含まれません。
-- Using SOUNDEX
SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe');
以下に結果セットを示します。
----- -----
S530 S530
(1 row(s) affected)
DIFFERENCE
関数は、SOUNDEX
パターンの結果を比較します。次の例では、母音が違うだけの 2 つの文字列の場合を示しています。返される値は、類似性が最も高い 4
です。
-- Using DIFFERENCE
SELECT DIFFERENCE('Smithers', 'Smythers');
GO
以下に結果セットを示します。
-----------
4
(1 row(s) affected)
次の例では子音が異なるため、返される値は、類似性がより低い 2
となります。
SELECT DIFFERENCE('Anothers', 'Brothers');
GO
以下に結果セットを示します。
-----------
2
(1 row(s) affected)