宣言
SUBSTR(str, pos)
SUBSTR(str, pos, len)
SUBSTR(str FROM pos)
SUBSTR(str FROM pos FOR len)
説明
str の長さが len で、開始位置が pos の部分文字列を返します。引数に NULL が含まれている場合は、NULL を返します。
lenが指定されない場合、返される部分文字列はposからstrの終端までの範囲となります。posの値が負の数の場合、strの末尾から先頭に向かって逆順に開始位置を決定します。lenが 0 以下、またはposで指定された開始位置が無効な場合、空の文字列を返します。
例
obclient> SELECT
SUBSTR('abcdefg', 3),
SUBSTR('abcdefg', 3, 2),
SUBSTR('abcdefg', -3),
SUBSTR('abcdefg', 3, -2),
SUBSTR('abcdefg' from -4 for 2)
\G
*************************** 1. row ***************************
SUBSTR('abcdefg', 3): cdefg
SUBSTR('abcdefg', 3, 2): cd
SUBSTR('abcdefg', -3): efg
SUBSTR('abcdefg', 3, -2):
SUBSTR('abcdefg' from -4 for 2): de
1 row in set