SQLiteは軽量で使いやすいデータベースとして、アプリ開発やデータ管理の現場で幅広く利用されています。特に学習用としても適しており、SQLの基本操作を理解するにはもってこいのツールです。
この記事では、SQLiteを使ってデータを取得する基本的なSELECT文の使い方、条件を指定するWHERE句、結果を並び替えるORDER BY句、重複を除くDISTINCT句の使い方を初心者向けにわかりやすく解説します。
これからSQLiteやSQLの基礎を学びたいという方におすすめの内容です。
データを取得する基本:SELECT文の使い方
SQLiteで最もよく使うコマンドのひとつがSELECT
文です。データベースから情報を取り出す際に使います。
基本形
SELECT 列名 FROM テーブル名;
例えば、users
というテーブルからname
列のデータを取得したい場合は、以下のように記述します。
SELECT name FROM users;
テーブルにあるすべての列を取得したい場合は、*
(アスタリスク)を使います。
SELECT * FROM users;
このように、SELECT
文は非常にシンプルで直感的な構文ですが、非常に強力です。基本をしっかり押さえることで、より複雑なクエリにも対応できるようになります。
条件による絞り込み:WHERE句の使い方
大量のデータから必要な情報だけを取り出すには、WHERE
句を使って条件を指定するのが基本です。
基本形
SELECT 列名 FROM テーブル名 WHERE 条件;
たとえば、age
が30以上のユーザーを取得したい場合は以下のように書きます。
SELECT * FROM users WHERE age >= 30;
条件には以下のような演算子が使えます。
=
(等しい)!=
(等しくない)>
(より大きい)<
(より小さい)>=
(以上)<=
(以下)
また、文字列の検索や部分一致にはLIKE
が便利です。
SELECT * FROM users WHERE name LIKE '田中%';
この例では、名前が「田中」で始まるユーザーを抽出しています。
複数の条件を組み合わせることも可能です。
SELECT * FROM users WHERE age > 25 AND city = '東京';
AND
やOR
を使えば、柔軟な条件設定ができます。
並び替え:ORDER BY句の使い方
取得したデータを見やすく整えるためには、ORDER BY
句を使って並び替えを行います。
基本形
SELECT 列名 FROM テーブル名 ORDER BY 並び替え対象列 [ASC|DESC];
ASC
:昇順(小さいものから大きいものへ)DESC
:降順(大きいものから小さいものへ)
例:
SELECT * FROM users ORDER BY age ASC;
このクエリは、users
テーブルを年齢の昇順に並び替えて表示します。
降順で表示したい場合は次のようにします。
SELECT * FROM users ORDER BY age DESC;
並び替えの対象は複数指定することも可能です。
SELECT * FROM users ORDER BY city ASC, age DESC;
この例では、まず都市名で昇順に並び替え、その中で年齢が高い順に並びます。
重複の排除:DISTINCTの使い方
ある列に重複するデータが含まれている場合、それらを1つだけにまとめて表示したいときに便利なのがDISTINCT
です。
基本形
SELECT DISTINCT 列名 FROM テーブル名;
例えば、users
テーブルの中から、重複しない都市名だけを取り出す場合は次のようにします。
SELECT DISTINCT city FROM users;
DISTINCT
を使うと、同じ都市に住んでいるユーザーが複数いても、都市名は1回しか表示されません。
複数列を指定することもできます。
SELECT DISTINCT city, age FROM users;
この場合、city
とage
の組み合わせが完全に同じものが重複と判断されます。
実践例:SELECT、WHERE、ORDER BY、DISTINCTを組み合わせる
SQLiteの真価は、これらの構文を組み合わせて使うことにあります。以下は、実践的なクエリの例です。
SELECT DISTINCT name FROM users WHERE age >= 30 ORDER BY name ASC;
このクエリでは、
- 30歳以上のユーザーの中から、
- 名前の重複を排除し、
- 名前の昇順で並び替えて
表示しています。基本的な構文を理解していれば、このような複雑な処理も簡単に書けるようになります。
まとめ
SQLiteにおけるデータ取得の基本であるSELECT
文、条件による絞り込みのWHERE
句、並び替えのORDER BY
、重複を取り除くDISTINCT
は、どれもデータベース操作に欠かせない機能です。
それぞれの構文をマスターすれば、実務でも役立つデータベースのスキルを身につけることができます。
今後は、JOIN
やGROUP BY
といったさらに応用的なSQL構文に進んでいくことで、より複雑なデータ分析や処理にも対応できるようになるでしょう。
まずは、この記事で紹介した基本をしっかり使いこなして、SQLiteの操作に自信をつけていきましょう。