RTRIM スカラー関数
RTRIM 関数は、トリム式の内容に基づいて、ストリング式の末尾からバイトを除去します。
スキーマは SYSIBM です。
RTRIM 関数は、string-expression の末尾から、trim-expression に含まれるすべての文字を除去します。 検索は、trim-expression に含まれる各文字のバイナリー表現 (1 つ以上のバイトで構成される) を string-expression の末尾にあるバイトと比較することによって行われます。 string-expression が FOR BIT DATA として定義される場合、検索は、trim-expression に含まれる各バイトを string-expression の末尾にあるバイトと比較することによって行われます。
- 文字列式
- ソース・ストリングを指定する式。 引数は、LOB ではない組み込みストリング・データ・タイプの値、または数値データ・タイプの値を返す式でなければなりません。 ストリング・データ・タイプでない値は、関数の評価の前に VARCHAR に暗黙的にキャストされます。 string-expression が FOR BIT DATA でない場合、trim-expression を FOR BIT DATA にすることはできません。
- トリム式
- string-expression の末尾から除去する文字を指定する式。 この式は、LOB ではない組み込みストリング・データ・タイプ、または数値データ・タイプの値を返す必要があります。 ストリング・データ・タイプでない値は、関数の評価の前に VARCHAR に暗黙的にキャストされます。
trim-expression のデフォルトは、string-expression のデータ・タイプによって異なります。
- string-expression が DBCS グラフィック・ストリングであれば DBCS のブランク。 ASCII の場合、DBCS のブランクを表す 16 進値は、CCSID によって決まります。 例えば、日本語 (CCSID 301) の場合は X'8140' が DBCS のブランクを表し、中国語 (簡体字) の場合は X'A1A1' が DBCS のブランクを表します。 EBCDIC の場合は X'4040' が DBCS のブランクを表します。
- 文字列表現がUnicodeグラフィック文字列の場合、 UTF-16 または UCS-2 のブランク (X'0020' )。
- 文字列式がバイナリ文字列の場合、値は X'00' です。
- それ以外の場合は、1 バイトのブランク。 EBCDIC の場合は、X'40' がブランクを示します。 EBCDIC でない場合は、X'20' がブランクを表します。
string-expression と trim-expression は互換性のあるデータ・タイプを持つ必要があります。 string-expression と trim-expression の CCSID セットが異なる場合、trim-expression の CCSID は string-expression の CCSID に変換されます。
関数の結果は、string-expression のデータ・タイプによって決まります。
- string-expression が文字ストリングであれば VARCHAR。 string-expression が FOR BIT DATA として定義されている場合、結果は FOR BIT DATA です。
- string-expression がグラフィックであれば VARGRAPHIC。
- string-expression がバイナリー・ストリングであれば VARBINARY。
結果の長さ属性は、string-expression の長さ属性と同じになります。
文字ストリングまたはバイナリー・ストリングの場合、結果の実際の長さは、除去されるバイト数を string-expression から引いた長さになります。 グラフィック・ストリングである場合、結果の実際の長さは、除去される 2 バイト文字の数を string-expression から引いた長さ (2 バイト文字単位) になります。 すべての文字が除去された場合、結果は空ストリング (長さゼロ) です。
結果はnullになる可能性があります。引数がnullの場合、結果もnull値となります。
結果の CCSID は string-expression の CCSID と同じです。
注
- EBCDIC 混合ストリング入力の有効な内容。
- string-expression が EBCDIC 混合ストリングの場合は、ストリングには有効な EBCDIC 混合データが含まれていなければなりません。
例
- 例: RTRIM 関数を使用して、最初の引数の末尾 (右側) から、2 番目の引数に含まれる個々の数字を除去します。
SELECT RTRIM ('123DEFG123', '321'), RTRIM ('12322XYZ12322222', '123'), RTRIM ('12321', '213'), RTRIM ('123XYX', '321') FROM SYSIBM.SYSDUMMY1結果は、'
123DEFG'、 '12322XYZ'、'' (空ストリング。すべての文字が除去されています)、および '123XYX' (除去された文字はありません) です。RTRIM関数は、文字列の先頭にある「1」、「2」、「3」の文字を、「1」、「2」、「3」以外の文字の前に削除することはありません。
- 例: RTRIM 関数を使用して、最初の引数の末尾 (右側) から、2 番目の引数に含まれる個々の文字を除去します。
SELECT RTRIM ('((-78.0))' , '-0.()') FROM SYSIBM.SYSDUMMY1結果は '
((-78' です。- 例: RTRIM 関数を使用して、最初の引数の末尾 (右側) から、2 番目の引数に含まれるドル記号とピリオドを除去します。
SELECT RTRIM ('...$VAR$...', '$.') FROM SYSIBM.SYSDUMMY1結果は '
...$VAR' です。
