listCollections (コレクション一覧)
最終更新:2026-10-09
listCollections (コレクション一覧)
listCollections はデータベースのコレクションをそのオプション(バリデーター、照合、TTL など)付きで一覧表示します。mongosh では名前のみなら db.getCollectionNames()、詳細は db.getCollectionInfos() を使います。filter 引数で名前やタイプ(ビューのみなど)で絞り込めます。結果はカーソルで返され、反復して処理します。
| カテゴリ | 管理コマンド |
|---|---|
| MongoDB バージョン | 1.0+ |
| 例の言語 | mongosh(シェル) |
📝 構文
db.runCommand({ listCollections: 1, filter: { name: /^orders/ } })
db.getCollectionInfos({ name: /^orders/ })
⚙️ パラメータ
| filter | 名前、種類、オプションなどで絞り込みます。 |
|---|---|
| nameOnly | 名前のみを返すには true を設定します。 |
戻り値:firstBatch にコレクションごとの name、type、options を保持するカーソルを返します
▶ 例
以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):
// listCollections: すべてのコレクション名を出力
use shop
db.getCollectionInfos().forEach((c) => print(c.name))
出力:
orders
products
users
📌 注意事項
- 結果はカーソル。firstBatch を反復してすべて取得する
- filter は name、type、options をサポート
- system.* コレクションもデフォルトで含まれる。name でフィルタして除外する
🏷️ 関連タグ
💡 関連ケース
さらなる実践ケースを近日公開予定。
📚 関連チュートリアル
❓ よくある質問
QlistCollections と getCollectionNames の違いは?
AgetCollectionNames は名前のみ、listCollections はコレクションごとのオプションを含みます。
Qビューだけを絞り込めますか?
Afilter: { type: 'view' } でビューのみ一覧できます。
Q何が返りますか?
Aカーソルです。firstBatch を反復してコレクションメタデータを取得します。