3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SQLにおけるSUBSTRING関数の用法と使用例

Last updated at Posted at 2022-11-29

SUBSTRING関数とは

SQLにおける、文字列を切り抜くことができる関数です。

使用方法

SUBSTRING(文字列,抽出開始位置,切り取る文字数)

使用例

   SET 国名 = CASE SUBSTRING(TRIM(メールアドレス),
              LENGTH(TRIM(メールアドレス))-1, 2)
             WHEN 'jp' THEN '日本'
             WHEN 'uk' THEN 'イギリス'
             WHEN 'cn' THEN '中国'
             WHEN 'fr' THEN 'フランス'
             WHEN 'vn' THEN 'ベトナム' END;

参照もとのテーブルは端折っていますが、こんなふうに使います。
構造は下記の通りです
・ 指定する文字列 → TRIM(メールアドレス)
・ 抽出開始位置  → LENGTH(TRIM(メールアドレス))-1
・ 切り取る文字数 → 2

ネストが複雑ですが、メールアドレスの列を指定し、余白を切り取った文字列の長さの数値に-1したもの(つまり、文字列の末尾から一文字手前の位置)を指定し、そこから二文字抽出する、ということをしています。

まとめ

・ 列指定でのTRIMは必要ではないので、ないほうが良いですね。
・ 関数を設定する際に算術できる点が、少しわかりづらかったです。
  → なので、2ではなく、1+1でも同じ意味となり、正常に動作してくれます。
   記述の自由度が高いことが分かりますね。

参考文献

2022,3『スッキリわかるSQL入門 第3版』

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?