POSITION - 文字列内のサブ文字列の開始位置を取得

POSITION 関数は、ソース文字列内のサブ文字列の開始位置を文字数で返します。

文字列内のサブ文字列の開始位置を取得

POSITION(pattern, string)

説明

pattern

文字

開始位置を特定するサブ文字列です。この文字列は、単一の文字 (ブランクでも可) にすることも、複数の文字にすることもできます。

string

文字

パターンを検索する文字列です。

返される値のデータタイプは整数です。

サブ文字列の開始位置の取得

次のリクエストでは EMPLOYEE データソースが使用され、POSITION 関数が、LAST_NAME フィールドで最初の大文字「I」が出現する位置を特定し、結果を I_IN_NAME フィールドに格納します。

TABLE FILE EMPLOYEE
PRINT LAST_NAME AND COMPUTE
I_IN_NAME/I2 = POSITION('I', LAST_NAME);
ON TABLE SET PAGE NOPAGE
END

出力結果は次のとおりです。

  LAST_NAME        I_IN_NAME                     
  ---------        ---------                           
  STEVENS                  0
  SMITH                    3
  JONES                    0
  SMITH                    3
  BANNING                  5
  IRVING                   1
  ROMANS                   0
  MCCOY                    0
  BLACKWOOD                0
  MCKNIGHT                 5
  GREENSPAN                0
  CROSS                    0