SUBSTR
指定された文字列の特定の位置から、指定した文字数を含む文字列を抽出します。
len引数なしの形式は、文字列strの位置posから始まる部分文字列を返します。len引数ありの形式は、文字列strの位置posから始まる、長さlen文字の部分文字列を返します。
pos には負の値を使用することもできます。この場合、部分文字列の開始位置は文字列の先頭からではなく、文字列の末尾から pos 文字分の位置になります。負の値は、この関数のどの形式でも pos に使用できます。pos に 0 を指定すると空文字列が返されます。部分文字列の抽出元となる文字列の最初の文字位置は 1 として数えられます。
構文
SUBSTR(<str>, <pos>)
SUBSTR(<str>, <pos>, <len>)
引数
エイリアス
戻り値の型
VARCHAR
例
SELECT
SUBSTRING('Quadratically', 5),
SUBSTR('Quadratically', 5),
MID('Quadratically', 5);
┌─────────────────────────────────────────────────────────────────────────────────────────────────┐
│ substring('quadratically' from 5) │ substring('quadratically' from 5) │ mid('quadratically', 5) │
├───────────────────────────────────┼───────────────────────────────────┼─────────────────────────┤
│ ratically │ ratically │ ratically │
└─────────────────────────────────────────────────────────────────────────────────────────────────┘
SELECT
SUBSTRING('Quadratically', 5, 6),
SUBSTR('Quadratically', 5, 6),
MID('Quadratically', 5, 6);
┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ substring('quadratically' from 5 for 6) │ substring('quadratically' from 5 for 6) │ mid('quadratically', 5, 6) │
├─────────────────────────────────────────┼─────────────────────────────────────────┼────────────────────────────┤
│ ratica │ ratica │ ratica │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘