PostgreSQL 文字列を切り出す(SUBSTR)

PostgreSQLのSQLのSUBSTRで、文字列を切り出すサンプルです。

目次

サンプル 文字を切り出す(SUBSTR)
  文字列の途中から最後までを取得する(引数2つ)
  文字列の後ろから取得する(Right)
  文字列の前から取得する(Left)

文字を切り出す(SUBSTR)

SUBSTR(文字列,開始の位置[,文字数])
  • 引数の文字列に対して、開始の位置から文字数分の文字を切り出します。
  • 文字数は省略可能です。その場合、開始の位置から最後まで切り出します。
  • 先頭の1文字目の位置は1です。
  • 存在しないときは、空文字を返します。

SUBSTR関数のサンプルです。

SELECT SUBSTR('abcabc',1,1); --a
SELECT SUBSTR('abcabc',1,2); --ab
SELECT SUBSTR('abcabc',1,3); --abc
SELECT SUBSTR('abcabc',2,1); --b
SELECT SUBSTR('abcabc',9,1); --空文字

SELECT SUBSTR('あいうあいう',1,1); --あ
SELECT SUBSTR('あいうあいう',1,2); --あい
SELECT SUBSTR('あいうあいう',1,3); --あいう
SELECT SUBSTR('あいうあいう',2,1); --い

1,4行目は、指定の位置から1文字取得しています。
2,3行目は取得する文字数を増やしています。
5行目は、該当する文字がないので空文字を返します。
7行目以降は、全角の日本語文字です。

 

文字列の途中から最後までを取得する(引数2つ)

文字列の途中から最後までを取得するサンプルです。

SELECT SUBSTR('abcde',2); --bcde
SELECT SUBSTR('abcde',3); --cde
SELECT SUBSTR('abcde',4); --de

SELECT SUBSTR('あいうえお',2); --いうえお
SELECT SUBSTR('あいうえお',3); --うえお
SELECT SUBSTR('あいうえお',4); --えお

2つめの引数は検索開始位置で、3つめの引数がない場合は、最後の文字までが対象になります。

 

文字列の後ろから取得する(Right)

文字列の後ろから取得する場合は、Rightも使用できます。

SELECT RIGHT('abcde',2); --de
SELECT RIGHT('abcde',3); --cde
SELECT RIGHT('abcde',4); --bcde

SELECT RIGHT('あいうえお',2); --えお
SELECT RIGHT('あいうえお',3); --うえお
SELECT RIGHT('あいうえお',4); --いうえお

2つめの引数は、取得する文字数です。

 

文字列の前から取得する(Left)

文字列の前から取得する場合は、Leftも使用できます。

SELECT LEFT('abcde',2); --ab
SELECT LEFT('abcde',3); --abc
SELECT LEFT('abcde',4); --abcd

SELECT LEFT('あいうえお',2); --あい
SELECT LEFT('あいうえお',3); --あいう
SELECT LEFT('あいうえお',4); --あいうえ

2つめの引数は、取得する文字数です。

関連の記事

PostgreSQL 文字列を操作するサンプル

△上に戻る