プログラム関係の備忘録。技術系記事1000記事以上を目指すブログ

【MySQL】指定した文字数の文字列をSELECTする方法

  • 2020年5月27日
  • 2020年5月27日
  • DataBase, SQL
  • 953view
  • 0件

はじめに

タイトルの通りですが、SQLで指定した文字数の文字列をSELECTする方法をメモしておきます。
使いどころとしてはブログ一覧記事で、本文から抜粋して特定文字数だけSELECTしたいとき、などでしょうか。

使用するサンプルデータ

テーブル名:test_table

idcolname
1テキストのサンプル

指定した文字数の文字列をSELECTする方法

SELECT
  LEFT (colname, 5) 
FROM
  test_table

test_tableというテーブル内のカラム(colname)の先頭から5文字を抽出するサンプルです。

colnameには「 テキストのサンプル 」という文字列が格納されている為、上記の結果は「 テキストの 」となります。

LEFT(カラム名,文字数)とすることで、左から5文字ということですね。
とても簡単です。

上記では先頭から5文字のサンプルを紹介しましたが、以下のようにいろいろな位置から抽出することもできます。

右端から文字数を指定する

SELECT
  RIGHT (colname, 5) 
FROM
  test_table

結果: 「のサンプル 」

指定した位置から指定した文字数の文字列を取得する

SELECT
  SUBSTR (colname, 3, 5) 
FROM
  test_table

結果:「ストのサン」