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つめの引数は、取得する文字数です。
関連の記事