TRIM スカラー関数

TRIM 関数はブランクまたは指定されたその他の文字を、ストリング式の末尾、先頭、またはその両方から除去します。

構文図を読む構文図をスキップするTRIM( BOTHBLEADINGLTRAILINGTstrip-characterFROM string-expression)

スキーマは SYSIBM です。キーワードが関数シグニチャーで使用されている場合、関数名を修飾名で指定することはできません。

BOTH、LEADING、または TRAILING
文字をストリング式の先頭、末尾、または両端から除去するかどうかを指定します。 この引数を指定しない場合、文字はストリングの末尾と先頭の両方から除去されます。
strip-character
除去する文字を指定する単一文字定数。 strip-character に指定できるのは、UTF-32 エンコードで単一文字または 1 桁の数値になるすべての文字です。この文字のバイナリー表記が突き合わされます。
strip-character が指定されず、以下の場合:
  • string-expression が DBCS GRAPHIC ストリングである場合、デフォルトの strip-character は DBCS のブランクです。 そのコード・ポイントは、データベースのコード・ページに従属します。
  • string-expression が UCS-2 GRAPHIC ストリングの場合、デフォルトの strip-character は UCS-2 のブランク (X'0020') です。
  • string-expression がバイナリー・ストリングの場合、デフォルトの strip-character は、16 進ゼロ (X'00') です。
  • その他の場合、デフォルトの strip-character は SBCS のブランク (X'20') です。
FROM string-expression
結果を取り出すストリングを指定する式。 式は組み込み CHAR、VARCHAR、BINARY、VARBINARY、GRAPHIC、VARGRAPHIC、数値、または日時のいずれかのデータ・タイプの値を戻す必要があります。CHAR、VARCHAR、BINARY、VARBINARY、GRAPHIC、VARGRAPHIC のいずれのデータ・タイプでもない値は、関数の評価の前に VARCHAR に暗黙的にキャストされます。

string-expression の値と strip-character の値は、互換性のあるデータ・タイプである必要があります。

結果のデータ・タイプは、string-expression のデータ・タイプによって異なります。
  • データ・タイプが VARCHAR または CHAR の場合、VARCHAR
  • データ・タイプが VARGRAPHIC または GRAPHIC の場合、VARGRAPHIC
  • データ・タイプが VARBINARY または BINARY の場合、VARBINARY

結果は、string-expression の長さ属性と同じ最大長を持つ、可変長ストリングです。 結果の実際の長さは、string-expression の長さから、除去される string units の数を引いた値になります。すべての文字が除去された場合、結果は空の可変長ストリングです。 結果のコード・ページは、string-expression のコード・ページと同じです。

  • 例 1: タイプ CHAR(9) のホスト変数 HELLO が、値 ' Hello' を持つと想定します。
       SELECT TRIM(:HELLO),
         TRIM(TRAILING FROM :HELLO)
       FROM SYSIBM.SYSDUMMY1
    これは値 'Hello' および ' Hello' をそれぞれ戻します。
  • 例 2: タイプ CHAR(9) のホスト変数 BALANCE が、値 '000345.50' を持つと想定します。
       SELECT TRIM(L '0' FROM :BALANCE),
       FROM SYSIBM.SYSDUMMY1
    この例では、値 '345.50' を戻します。