ORACLE関数

[ORACLE関数] バイト数単位で文字を切り出す(SUBSTRB)

投稿日:2017年3月16日 更新日:

オラクルで文字列からバイト数単位で文字を切り出すには、
SUBSTRB関数を使用します。

構文

構文は以下の通りです。

SUBSTRB(<対象文字列>, <開始バイト位置>, <終了バイト位置>)

終了バイト位置は省略可です。

サンプルソース

以下のようなテーブルをサンプルとします。

【tbl1】
CDNAME
001ABCDEFGHIJ
002あいうえおかきくけこ
003あAいBうCえDおE

文字コードは全角=2バイトとします。


例)1バイト目から5バイト取得する

【結果】
ABCDE あい あAい

例)3バイト目から5バイト取得する

【結果】
CDEFG いう AいB

例)3バイト目から文字列の末尾まで取得する

【結果】
CDEFGHIJ いうえおかきくけこ AいBうCえDおE

メモ

  • 使用している文字コードがUnicodeなどの場合は結果は異なります。 (Unicodeは1文字が3バイトで表されるため)
  • 切り出した部分が全角文字の途中となる場合、その文字は切り出されません。
  • 文字数単位で文字を切り出したい場合は、SUBSTR関数を使用します。 ※詳しくは、「文字数単位で文字を切り出す」をご覧ください。

スポンサーリンク

スポンサーリンク

-ORACLE関数
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ORACLE

[ORACLE関数] 日付型の差分を月で取得する(MONTHS_BETWEEN)

日付型の差分を月で取得するには、MONTHS_BETWEENを使用します。 構文 (日付1と日付2の月差を取得する) M ...
ORACLE

[ORACLE関数] 現行セッションの通貨記号を確認する

現行セッションの通貨記号を確認するには、 SYS_CONTEXT('USERENV', 'NLS_CURRENCY') ...
ORACLE

[ORACLE関数] クライアントのIPアドレスを確認する

クライアントのIPアドレスを確認するには、 SYS_CONTEXT('USERENV', 'IP_ADDRESS') を ...
ORACLE

[ORACLE関数] 文字数単位で文字を切り出す(SUBSTR)

オラクルで文字列から文字数単位で文字を切り出すには、SUBSTR関数を使用します。 構文 構文は以下の通りです。 SUB ...
ORACLE

[ORACLE関数] レコード単位で最小値・最大値を求める(LEAST、GREATEST)

レコード単位で最小値or最大値を求めるには、LEAST/GREATEST関数を使用します。 例として、学生毎の国語、数学 ...

スポンサーリンク