こんにちは、かつコーチです。
「データベースを学ぼう」と決めても、次に立ちはだかるのが「どのDBMSを使えばいいの?」という選択です。
MySQL、PostgreSQL、SQLite、MongoDBなど、名前をよく聞くDBMSはいくつもあります。
私自身、初めてポートフォリオを作ったとき、どれを選べばいいのか分からず1日調べ物に費やしてしまった経験があります。
この記事では、代表的な4つのDBMSの違いと、目的別の選び方を整理します。
代表的なDBMSの特徴
MySQL
MySQLは、世界で最も広く使われてきたオープンソースのRDBMSです。
WordPressをはじめ多くのCMS・Webサービスで採用されており、情報量・学習リソースの豊富さが強みです。
- 動作が軽く、Web系サービスとの相性が良い
- レンタルサーバーでも標準的にサポートされていることが多い
- Laravel、Rails、Djangoなど主要フレームワークとの連携実績が豊富
PostgreSQL
PostgreSQLは、機能の豊富さと標準SQLへの準拠度の高さで評価されているオープンソースRDBMSです。
私が調べた市場データでは、2026年時点で新規プロジェクトの採用率が55.6%とMySQLを上回っており、2023年頃に採用率が逆転したとされています(rstone調べ)。
- 複雑な集計・分析処理に強い
- JSON型やウィンドウ関数など高度な機能が豊富
- 生成AI開発で使われるpgvector(ベクトル検索の拡張機能)に対応しており、AI関連プロジェクトでの採用が増えている
SQLite
SQLiteは、サーバーを立てずにアプリ内にデータベースファイルを1つ持つ形で動く軽量DBMSです。
- インストール・サーバー起動が不要で、学習用に最も手軽
- スマホアプリ(iOS/Android)や小規模なデスクトップアプリに組み込まれることが多い
- 大規模な同時アクセスには不向き
MongoDB
MongoDBは、RDBMSとは異なるNoSQLに分類されるDBMSです。
テーブルではなく「ドキュメント」という柔軟な形式でデータを保存します。
- スキーマ(テーブル構造)を厳密に決めずに開発を進められる
- ログデータやSNSの投稿データなど、構造が変化しやすいデータの扱いが得意
- テーブル同士を厳密に関連づけるような処理はRDBMSほど得意ではない
目的別の選び方
学習目的なら
初めてSQLを学ぶなら、MySQLかSQLiteがおすすめです。
情報量が多く、つまずいたときに解決策を検索しやすいのがMySQLの強みです。
「とにかく手軽に試したい」という場合は、インストール不要のSQLiteから始めるのも良い選択です。
このSQL基礎編では、ローカル環境にMySQLをインストールして手を動かす前提で解説していきます。
実務・案件で使うなら
案件で使うDBMSは、フレームワークやインフラの都合で決まることがほとんどです。
ただし、新規プロジェクトでゼロから選べる場合は、以下の判断軸が参考になります。
| 判断軸 | 選び方の目安 |
|---|---|
| CMSやシンプルなWebサービス | MySQL(実績・情報量が豊富) |
| 複雑な集計・分析やAI関連機能を含む | PostgreSQL(機能の豊富さ、pgvector対応) |
| スマホアプリ・小規模なローカルアプリ | SQLite(軽量・組み込みやすい) |
| データ構造が頻繁に変わる/非構造データが多い | MongoDB(柔軟なスキーマ) |
判断に迷ったら
「とりあえずRDBMSで作りたいが、MySQLかPostgreSQLか迷う」という場合は、PostgreSQLを選んでおくのも1つの手です。
標準SQLへの準拠度が高く、将来的に他のRDBMSへ移行する際の学び直しコストが少ない傾向があります。
とはいえ、この基礎編で学ぶSQLの文法自体はどのDBMSでもほぼ共通するため、どちらを選んでも学習の土台としては問題ありません。
まとめ
この記事のポイント
- MySQLは情報量・実績豊富な定番RDBMS、PostgreSQLは機能豊富で採用率が伸びているRDBMS
- SQLiteはサーバー不要で学習・組み込み向き、MongoDBはNoSQLで柔軟なデータ構造が得意
- 学習用にはMySQLかSQLiteがおすすめ。実務では要件に応じてMySQL・PostgreSQLを使い分ける
- SQL基礎編ではMySQLをベースに、どのDBMSにも通用する共通文法を扱っていく
次に読むべき記事
- SQLとは?データベース操作言語の基本を理解する
- SELECT文の基本:データを取得する
タグ: SQL, 初心者向け, 比較検証