DIFFERENCE 関数は 2 つの文字列の American Soundex コードを比較します。この関数は INTEGER
を返し、Soundex コード間で一致する文字の数を示します。
Soundex コードは 4 文字の長さの文字列です。Soundex コードは、単語のスペルではなく発音方法を表します。例えば、Smith
と Smyth
は同じ Soundex コードを持ちます。
構文
DIFFERENCE(string1, string2)
引数
- string1
-
CHAR
文字列、VARCHAR
文字列、あるいはCHAR
またはVARCHAR
型に暗黙的に評価される式。 - string2
-
CHAR
文字列、VARCHAR
文字列、あるいはCHAR
またはVARCHAR
型に暗黙的に評価される式。
戻り型
- INTEGER
-
DIFFERENCE 関数は、American Soundex コードで 2 つの文字列内の一致する文字の数をカウントする
INTEGER
値 0~4 を返します。Soundex コードは 4 文字であるため、文字列の American Soundex コード値の 4 文字すべてが同じ場合、DIFFERENCE 関数は4
を返します。2 つの文字列のうちの 1 つが空の場合、DIFFERENCE は0
を返します。この関数は、どちらの文字列にも有効な文字が含まれていない場合、1
を返します。DIFFERENCE 関数は、a~z および A~Z を含む、英字のアルファベットで小文字または大文字の ASCII 文字のみを変換します。DIFFERENCE 関数は、他の文字を無視します。
例
文字列 %
および @
の Soundex 値を比較するには、次の例を使用します。この関数は、どちらの文字列にも有効な文字が含まれていないため、1
を返します。
SELECT DIFFERENCE('%', '@');
+------------+
| difference |
+------------+
| 1 |
+------------+
Amazon
および空の文字列の Soundex 値を比較するには、次の例を使用します。2 つの文字列のうちの 1 つが空であるため、この関数は 0
を返します。
SELECT DIFFERENCE('Amazon', '');
+------------+
| difference |
+------------+
| 0 |
+------------+
文字列 Amazon
および Ama
の Soundex 値を比較するには、次の例を使用します。文字列の Soundex 値の 2 文字が同じであるため、この関数は 2
を返します。
SELECT DIFFERENCE('Amazon', 'Ama');
+------------+
| difference |
+------------+
| 2 |
+------------+
文字列 Amazon
および +-*/%Amazon
の Soundex 値を比較するには、次の例を使用します。文字列の Soundex 値の 4 文字すべてが同じであるため、この関数は 4
を返します。この関数は、2 番目の文字列の無効な文字 +-*/%
を無視することに注目してください。
SELECT DIFFERENCE('Amazon', '+-*/%Amazon');
+------------+
| difference |
+------------+
| 4 |
+------------+
文字列 AC/DC
および Ay See Dee See
の Soundex 値を比較するには、次の例を使用します。文字列の Soundex 値の 4 文字すべてが同じであるため、この関数は 4
を返します。
SELECT DIFFERENCE('AC/DC', 'Ay See Dee See');
+------------+
| difference |
+------------+
| 4 |
+------------+