記事内に広告が含まれています。

【Oracle】SUBSTRで文字を末尾から切り出す(右から抽出)

Oracle の SUBSTR関数を使って、末尾から文字列を切り出す方法です。

【スポンサーリンク】

SUBSTR関数で末尾から切り出す

SUBSTR関数は文字列を先頭から抽出する方法が基本形ですが、末尾から(右から)抽出する方法もあります。往々にして、後ろから切り出したい・抽出したい場合に使います。

構文はこれ。

SUBSTR('対象の文字列', マイナスの整数, [切り出す長さ]);

第2引数にマイナスの整数を指定するだけです。

【スポンサーリンク】

サンプル(実行例)

「Hello, World!」に対して、末尾から(右から)SUBSTRで切り出し・抽出を行ってみます。

SELECT SUBSTR('Hello, World!', -6) AS 開始位置のみ指定,
       SUBSTR('Hello, World!', -6, 3) AS 開始位置と文字数指定
  FROM DUAL;

DUALなので、そのまま実行してみて下さい。

それぞれ解説します。

まず、開始位置のみ指定した場合。

SUBSTR('Hello, World!', -6)

マイナスの整数「-6」を指定しているので、末尾から6文字目が開始位置として指定されます。なので、結果に「World!」が戻ってきています。

次に開始位置と文字数を指定した場合。

SUBSTR('Hello, World!', -6, 3)

末尾から6文字目を開始位置とし、そこから3文字を切り出しています。結果に「Wor」が戻ってきています。

【スポンサーリンク】

参考リンク

SUBSTR
【スポンサーリンク】

関連記事

【Oracle】SUBSTRで文字を切り出す(抽出)
Oracle の SUBSTR関数を使って、文字列を切り出す方法です。