MongoDB
エンジニアのためのWebチートシート
MongoDBは、ドキュメント指向のNoSQLデータベースです。 JSON風のドキュメントを柔軟に格納でき、スケーラビリティに優れています。 CRUD操作、クエリ・更新演算子、集約パイプライン、インデックス、データモデリングなどをチートシートにまとめました。
mongosh コマンド
接続
mongosh でデータベースに接続する方法です。
データベース & コレクション
データベースとコレクションの操作です。
ヘルパーコマンド
よく使うヘルパーメソッドです。
CRUD操作
Create(作成)
ドキュメントの挿入です。
Read(読み取り)
ドキュメントの検索です。
Update & Delete
ドキュメントの更新と削除です。
クエリ演算子
比較演算子と論理演算子の一覧です。
| 演算子 | 説明 |
|---|---|
$eq | 等しい — { age: { $eq: 30 } } ※ { age: 30 } と同等 |
$ne | 等しくない — { status: { $ne: "deleted" } } |
$gt / $gte | より大きい / 以上 — { age: { $gte: 20 } } |
$lt / $lte | より小さい / 以下 — { age: { $lt: 40 } } |
$in / $nin | いずれかに一致 / 不一致 — { status: { $in: ["active", "pending"] } } |
$and | 全条件を満たす(暗黙的ANDも可) |
$or | いずれかを満たす — { $or: [{ a: 1 }, { b: 2 }] } |
$not / $nor | 条件を否定 / いずれも満たさない |
要素 & 評価演算子
フィールドの存在チェック、正規表現、テキスト検索です。
配列演算子
配列フィールドに対するクエリ演算子です。
更新演算子
フィールドの値を変更する演算子の一覧です。
| 演算子 | 説明 |
|---|---|
$set | フィールドの値を設定 — { $set: { name: "Alice" } } |
$unset | フィールドを削除 — { $unset: { tmp: "" } } |
$rename | フィールド名を変更 — { $rename: { "old": "new" } } |
$inc | 数値を加算 — { $inc: { views: 1 } } |
$mul | 数値を乗算 — { $mul: { price: 1.1 } } |
$min / $max | 現在値より小さい/大きい場合のみ更新 |
$currentDate | 現在日時を設定 — { $currentDate: { updatedAt: true } } |
配列更新演算子
配列フィールドを変更する演算子です。
位置演算子 & arrayFilters
配列内の特定要素を更新する演算子です。
集約パイプライン
基本ステージ
$match, $group, $sort, $project, $limit の基本です。
$lookup & $unwind
コレクション結合と配列展開です。
$facet & $bucket
複数パイプラインの並列実行とバケット集計です。
インデックス
MongoDB がサポートするインデックス種類の一覧です。
| 種類 | 用途 |
|---|---|
単一フィールド | 1つのフィールドの等値・範囲検索 |
複合 | 複数フィールドの組み合わせ検索 |
マルチキー | 配列フィールド(自動作成) |
テキスト | 全文検索($text クエリ) |
TTL | 一定時間後にドキュメントを自動削除 |
ユニーク | フィールド値の一意性を保証 |
部分 | 条件を満たすドキュメントのみインデックス |
ワイルドカード | 動的フィールドに対応(スキーマレス向け) |
インデックス作成
用途別のインデックス作成パターンです。
explain & 統計
クエリの実行計画とパフォーマンス確認です。
データモデリング
埋め込み vs 参照
データモデリングの2つのアプローチです。
スキーマバリデーション
JSONスキーマによるドキュメントの検証ルールです。
トランザクション & 運用
トランザクション
複数操作のアトミック実行です。
ユーザー管理
ユーザーの作成と権限設定です。
引用・参考リンク
Related Cheatsheets
- SQL-SQL(Structured Query Language)は、リレーショナルデータベースを操作するための言語です。 SELECT、INSERT、UPDATE、DELETE、JOIN、集約関数などの基本構文をチートシートにまとめました。
- PostgreSQL-PostgreSQLは、高い信頼性と豊富な機能を持つオープンソースのリレーショナルデータベースです。 JSONB、配列型、ウィンドウ関数、CTEなど強力な機能を備えています。 psqlコマンド、データ型、テーブル定義、JSONB操作、インデックス、運用などをチートシートにまとめました。
- Redis-Redisは、高速なインメモリデータストアです。 キャッシュ、セッション管理、リアルタイムランキング、メッセージキューなど幅広い用途に使われます。 データ型、キー管理、Pub/Sub、ストリーム、トランザクション、実用パターンなどをチートシートにまとめました。
Related Goods
WebTerm - Recommended tools
WebTermは、ブラウザでLinuxコマンド・Gitコマンドを安全に実行でき、チュートリアル式で学べるターミナルサンドボックスです。
AIコーディングツールの普及に伴い、CLIの基礎知識を身につける重要性は増しています。実際のターミナルを操作するのに抵抗がある方でも、WebTermはローカル環境を壊す心配がありません。「会員登録不要・無料」で利用でき、学習環境として最適です。

WebTerm
Browser Terminal Sandbox for Learning CLI
All Cheatsheets



