Hi, I'm Ask INFA!
What would you like to know?
ASK INFAPreview
Please to access Ask INFA.

目次

Search

  1. はじめに
  2. 関数リファレンス
  3. 定数
  4. 演算子
  5. 日付
  6. 関数
  7. システム変数
  8. データ型リファレンス

関数リファレンス

関数リファレンス

SOUNDEX

SOUNDEX

文字列値を4字の文字列にエンコードします。
SOUNDEXは英語アルファベット(A~Z)の文字に対して機能します。入力文字列の最初の文字が、戻り値の先頭文字として使用され、それ以外の文字は、子音に基づく3桁の数値にエンコーディングします。
SOUNDEXは下記の規則に従って文字をエンコードします。
  • string
    の最初の文字を戻り値の最初の文字として使用し、大文字にエンコードします。たとえば、SOUNDEX(‘John’)とSOUNDEX(‘john’)は両方とも‘J500’を返します。
  • string
    の第一文字以降の最初の3つの異なる子音をエンコードし、残りは無視します。たとえば、SOUNDEX(‘JohnRB’)とSOUNDEX(‘JohnRBCD’)は両方とも‘J561’を返します。
  • 音が似ている子音には同じコードを割り当てます。
    以下の表に、SOUNDEXの子音に対するエンコードガイドラインを示します。
    コード
    子音
    1
    B、P、F、V
    2
    C、S、G、J、K、Q、X、Z
    3
    D、T
    4
    L
    5
    M、N
    6
    R
  • A、E、I、O、U、H、Wは
    string
    の最初の文字である場合を除き、これらの文字をスキップします。たとえば、SOUNDEX(‘A123’)は‘A000’を返し、SOUNDEX(‘MAeiouhwC’)は‘M000’を返します。
  • string
    が生成した文字数が4文字未満の場合、SOUNDEXは生成された文字列の残りの部分にゼロを埋め込みます。たとえば、SOUNDEX(‘J’)は‘J000’を返します。
  • 上記の表にリストされたのと同じコードを使用する連続した子音が
    string
    に含まれている場合、SOUNDEXは最初の子音をエンコードし、残りの同じコードの子音はスキップします。たとえば、SOUNDEX(‘AbbpdMN’)は‘A135’を返します。
  • string
    内の数字をスキップします。たとえば、SOUNDEX(‘Joh12n’)とSOUNDEX(‘1John’)は両方とも‘J500’を返します。
  • string
    がNULLの場合、または
    string
    内のすべての文字が英字でない場合、NULLを返します。

構文

SOUNDEX(
string
)
引数
必須/
オプション
説明
string
必須
文字列。エンコードしたい文字列値を渡します。有効な式を必要に応じて入力できます。

戻り値

文字列。
下記の条件のいずれかが真の場合、NULLとなります。
  • 関数に渡した値がNULL。
  • string
    内の文字が英字ではない。
  • string
    は空です。

次の式は、EMPLOYEE_NAMEカラムの値をエンコードします。
SOUNDEX( EMPLOYEE_NAME )SOUNDEX
EMPLOYEE_NAME
RETURN VALUE
John
J500
William
W450
jane
J500
joh12n
J500
1abc
A120
NULL
NULL