SQLite,文字列の一部を抽出する

スポンサーリンク

鍛錬 89

SQLite,文字列の一部を抽出する

文字列の一部を抽出するには、substr() 関数を使用します。
 
使用方法は、以下に示す通りです。

substr(‘文字列’, 開始位置, 抽出する文字数)

引数について

以下は、上記 substr() 関数の引数についてです。

引数2, 開始位置について
設定値 方向
値が正(+)の場合 文字列の「先頭」から開始位置を設定
値が負(-)の場合 文字列の「終端」から開始位置を設定
引数3, 抽出する文字数について
設定値 方向
値が正(+)の場合 右にカウント
値が負(-)の場合 左にカウント
省略した場合 開始位置から右側の全てを抽出
スポンサーリンク

実行結果

以下は、substr() 関数について、様々なパターンの挙動を確認しています。

先頭から4文字目を開始位置とし、右側に12文字抽出する

He succeeded to step up.

sqlite> 
sqlite> select substr('He succeeded to step up.', 4, 12);
succeeded to

先頭から13文字目を開始位置とし、左側に9文字抽出する

He succeeded to step up.

sqlite> 
sqlite> select substr('He succeeded to step up.', 13, -9);
succeeded

先頭から 4文字目 を開始位置とし、右側の全てを抽出する

He succeeded to step up.

sqlite> 
sqlite> select substr('He succeeded to step up.', 4);
succeeded to step up.

終端から8文字目を開始位置とし、右側に4文字抽出する

He succeeded to step up.

sqlite> 
sqlite> select substr('He succeeded to step up.', -8, 4);
step

終端から9文字目を開始位置とし、左側に12文字抽出する

He succeeded to step up.

sqlite> 
sqlite> select substr('He succeeded to step up.', -9, -12);
succeeded to
タイトルとURLをコピーしました