sqlite 指定した文字と任意の文字数のデータを取得する

sqlite 指定した文字と任意の文字数のデータを取得する

sqliteで、指定した文字と任意の文字数のデータを取得する手順を記述してます。

環境

  • OS windows11 home
  • sqlite 3.37.1
  • DB Browser for SQLite 3.12.2

手順

指定指定した文字と任意の文字数のデータを取得するには、「GLOB」でパターン「?」を使用します。

-- ? が任意の文字となります
SELECT * FROM テーブル名 WHERE カラム WHERE カラム GLOB 文字???文字;

実際に、以下のテーブル「person」というテーブルのカラム「name」を対象に実行してみます。

「s」から始まって「o」で終わる「4文字」ものを取得してみます。

select * FROM person where name glob 's??o';

実行結果

取得されていることが確認できます。

文字列で指定することも可能です。

select * FROM person where name glob 'si?o';

実行結果

範囲を指定

以下のように「a~s」までで始まり、「o」で終わる「4文字」という指定もできます。

select * FROM person where name glob '[a-s]??o';

実行結果

「j」か「g」で始まるという指定の仕方も可能です。

select * FROM person where name glob '[jg]??o';

実行結果