MongoDBシェルでfind()の結果を見やすく整形表示するpretty()メソッドの使い方
MongoDBシェルで検索結果を整形表示するには?
MongoDBシェルでは、カーソルオブジェクトに対してpretty()関数を呼び出すことで、クエリ結果を整形して(プリティプリント)表示できます。ドキュメントが多い場合やネストされた構造を持つデータを確認する際に、可読性が大きく向上する便利な機能です。
基本的な構文は以下のとおりです。
db.yourCollectionName.find().pretty();
サンプルコレクションの作成
それでは、実際にドキュメントを含むコレクションを作成して、pretty()の効果を確認してみましょう。まず、insertOne()メソッドを使って2件のドキュメントを挿入します。
> db.prettyDemo.insertOne({"ClientName":"Larry","ClientAge":27,"ClientFavoriteCountry":["US","UK"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8a440de01f572ca0ccf5f2")
}
> db.prettyDemo.insertOne({"ClientName":"Mike","ClientAge":57,"ClientFavoriteCountry":["AUS","UK"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8a4420e01f572ca0ccf5f3")
}find()のみで表示した場合
まずは、通常のfind()メソッドだけでコレクション内のすべてのドキュメントを表示してみます。
> db.prettyDemo.find();
実行結果は以下のとおりです。
{ "_id" : ObjectId("5c8a440de01f572ca0ccf5f2"), "ClientName" : "Larry", "ClientAge" : 27, "ClientFavoriteCountry" : [ "US", "UK" ] }
{ "_id" : ObjectId("5c8a4420e01f572ca0ccf5f3"), "ClientName" : "Mike", "ClientAge" : 57, "ClientFavoriteCountry" : [ "AUS", "UK" ] }このように、各ドキュメントが1行にまとめて表示されるため、フィールドが多い場合や配列を含む場合は読みづらくなります。
pretty()を使って整形表示した場合
次に、find()の結果に対してpretty()関数を呼び出してみましょう。
> db.prettyDemo.find().pretty();
実行結果は以下のとおりです。
{
"_id" : ObjectId("5c8a440de01f572ca0ccf5f2"),
"ClientName" : "Larry",
"ClientAge" : 27,
"ClientFavoriteCountry" : [
"US",
"UK"
]
}
{
"_id" : ObjectId("5c8a440de01f572ca0ccf5f3"),
"ClientName" : "Mike",
"ClientAge" : 57,
"ClientFavoriteCountry" : [
"AUS",
"UK"
]
}まとめ
pretty()を使用すると、各フィールドがインデント付きで1行ずつ整理されて表示され、配列の中身も縦に並ぶため、データ構造がひと目で把握できるようになります。MongoDBシェルで開発やデバッグを行う際は、find()にpretty()を組み合わせる習慣をつけておくと、作業効率が大幅に向上します。
-
mongoコマンドでMongoDBシェルを起動する方法
MongoDBシェルの起動方法MongoDBのシェル(対話型インターフェース)を起動するには、mongo コマンドを使用します。mongosではなく、クライアント用のシェルである mongo コマンドを実行する点に注意してください。基本構文> mongo起動手順まず、コマンドプロンプト(Windowsの場合はcmd)を開き、MongoDBがインストールされているbinディレクトリへ移動します。以下のようなパスになります。cd C:\Program Files\MongoDB\Server\<バージョン>\binbinディレクトリに移動したら、次のコマンドを入力してMongoD
-
Windowsターミナルの既定シェルを変更する方法【設定画面とsettings.json両対応】
Windowsターミナルは、デフォルトではWindows PowerShellをコマンドラインインタープリターとして使用します。コマンドプロンプトなど、別のシェルを普段使っている方にとっては、起動のたびにシェルを切り替えるのが手間に感じられることもあるでしょう。そこで本記事では、Windowsターミナルの既定(デフォルト)シェルを変更する方法をわかりやすく解説します。 WindowsターミナルはMicrosoft Storeから入手できるアプリで、コマンドプロンプトやWindows PowerShellといった従来のWindowsユーティリティを1つに統合したものです。複数のツールを同時に使い