Python

Python初学者向け:SQLite3のあいまい検索を基本から解説

スポンサーリンク

 

この記事はこんな方におススメです
  • Pythonを始めたばかりで基本から学びたい方
  • Pythonの基本的な部分を速習してまずは全体像を把握しておきたい方

はじめに

SQLiteのデータベースからデータを抽出する際に「あいまい検索」を用いたデータの絞り込み方法を基本から解説します。あいまい検索は完全な一致でなくてもデータを抽出できる強力なツールになります。データを抽出する際には、これまで通りSELECT文、条件を加えるにはWHEREを使うため、難しいことはありません。

今回もPythonを離れてSQLite3での操作となります。

検索でデータを抽出する

書式

まずは書式の確認からしていきましょう。データの抽出はこれまでみてきたとおりSELECT文を使います。あいまい検索を含めた条件指定は以下のような書式となります。

SELECT カラム名1,カラム名2,.. FROM テーブル名 WHERE カラム名 LIKE パターン

WHERE句のあとにLIKE句を使うことで、カラムの値と文字列が一致するかどうかを比較することができます。LIKE句のデフォルトでは「一致するかどうか」の判断は大文字・小文字を区別しません。また、LIKE句内では特殊文字「%」と「_」を組み合わせてパターンマッチングをおこなうことができます。各文字の意味は以下の通りとなります。

  • %:任意の0文字以上の文字列
  • _:任意の1文字

早速やってみましょう。

あいまい検索によるデータ抽出

LIKE句により条件を指定したデータ抽出

SELECTの後に「*」としているので、表示対象はすべてのカラムとなります。そのあとに「albums」というテーブルを指定しています。このあとに、WHEREで条件を書いていきます。まず、条件を指定するカラムは今回は、「Title」としています。そのあとにLIKE句を書いています。「’%for%’」を指定したので、「for」の前後に任意の0文字以上文字列があるTitleが抽出されます。

LIKE句では大文字と小文字を区別しないため、「for」も「For」も抽出されてますね。

スポンサーリンク

まとめ

今回はあいまい検索を可能にするLIKE句を扱いました。データを抽出するときはSELECT文を使います。SELECT文にはいろんな条件を付加することができます。少しずつ学んでいくとよいですね。LIKEでは大文字・小文字を区別しない、パターン検索をすることができます。

コメント

タイトルとURLをコピーしました