関数リファレンス > 関数 > LTRIM
  

LTRIM

文字列の先頭から空白または文字を削除します。LTRIMは、式内でIIFまたはDECODEとともに使用され、ターゲットテーブルにスペースが入るのを防ぎます。
式でtrim_setパラメータを指定しない場合、LTRIMはシングルバイトのスペースのみを削除します。
LTRIMを使用して文字列から文字を削除する場合、LTRIMはtrim_setstring引数内の各文字と左から1文字ずつ比較します。文字列内の文字がtrim_set内のいずれかの文字と一致した場合、LTRIMはその文字を削除します。LTRIMは、一致する文字がtrim_setで見つからなくなるまで、文字を比較して削除します。その後、一致する文字が含まれない文字列を返します。

構文

LTRIM( string [, trim_set] )
引数
必須/
オプション
説明
string
必須
任意の文字列値。変更したい文字列を渡します。有効な式を必要に応じて入力できます。文字列の先頭から文字を削除する前に、演算子を使って文字列の比較や連結を実行します。
trim_set
オプション
任意の文字列値。文字列の先頭から削除したい文字を渡します。有効な式を必要に応じて入力できます。文字列も入力できます。ただし、文字列の先頭から削除する文字は、'abc'のように一重引用符で囲む必要があります。削除したい文字を省略すると、関数は文字列の先頭から空白を削除します。
LTRIMでは、大文字と小文字が区別されます。たとえば、文字列'Alfredo'から文字'A'を削除したい場合は、必ず'a'ではなく'A'と入力します。

戻り値

文字列。trim_set引数で指定された文字を削除した結果の文字列値。
関数にNULL値を渡した場合はNULLです。trim_setがNULLの場合、関数はNULLを返します。

次の式は、LAST_NAMEカラムの文字列から文字‘S’と‘.’を削除します。
LTRIM( LAST_NAME, 'S.')
LAST_NAME
RETURN VALUE
Nelson
Nelson
Osborne
Osborne
NULL
NULL
S. MacDonald
MacDonald
Sawyer
awyer
H. Bender
H. Bender
Steadman
teadman
S. MacDonaldから‘S.’を削除し、SawyerおよびSteadmanから‘S’を削除しますが、H. Benderからはピリオドを削除しません。これは、LTRIMではtrim_set引数に指定された文字列を1文字ずつ検索していくからです。文字列内の最初の文字がtrim_set内の最初の文字と一致した場合、LTRIMはその文字を削除します。その後、LTRIMは文字列内の2番目の文字を見ます。それがtrim_set内の2番目の文字と一致していれば、それを削除します。3文字目以降も同様に進みます。文字列内の最初の文字がtrim_setで対応する文字と一致しなかった場合、LTRIMはこの文字列を返して、次の行の評価を行います。
H. Benderの場合は、Hがtrim_set引数のどの文字とも一致しないため、LTRIMはLAST_NAMEカラム内の文字列を返して、次の行に移ります。

ヒント

RTRIMおよびLTRIMを || またはCONCATとともに使用すると、2つの文字列を連結したあとで先頭および末尾の空白を削除します。
また、LTRIMをネストして複数組の文字を削除することもできます。たとえば、名前の列から先頭の空白と文字'T'とを削除したい場合は、次のような式を作成します。
LTRIM( LTRIM( NAMES ), 'T' )