SQLServer 文字列を切り出す(SUBSTRING)

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

目次

サンプル 文字を切り出す(SUBSTRING)
  文字列の後ろから取得する(Right)
  文字列の前から取得する(Left)

文字を切り出す(SUBSTRING)

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

SUBSTRING関数のサンプルです。

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

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

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

 

文字列の後ろから取得する(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つめの引数は、取得する文字数です。

関連の記事

 

△上に戻る