MongoDB Playground で MongoDB CRUD 演算子を使用して、コレクション内のドキュメントを読み取ることができます。
注意
ナビゲーション パネルの Documentsラベルにカーソルを合わせ、次をクリックすると、コレクションを検索するように事前構成された JavaScript Playgroundを開くことができます。表示されるアイコン。
前提条件
まだ行っていない場合は、MongoDB Playground でドキュメントを読み取る前に以下の前提条件を完了しておく必要があります。
VS Code でドキュメントを作成するか、別の方法を使用してコレクションにドキュメントを作成します。
1 つのドキュメントの読み取り
単一ドキュメントを読み取るには、Playground で次の構文を使用します。
db.collection.findOne( { <query> }, { <projection> } )
クエリを満たすドキュメントが複数ある場合、このメソッドではディスク上のドキュメントの順序を反映した 自然な順序に従って最初のドキュメントが返されます。
このメソッドのパラメーターの詳細については、MongoDB マニュアルのfindOne()を参照してください。
Playground を実行するには、Playground ビューの右上隅にある ボタンを押します。VS Code拡張機能は Playground を分割し、Playground の結果を Playground Results ペインに出力します。分割ビューを無効にした場合、 VS Code拡張機能は Playground の結果を新しいタブに出力します。
findOne() または find() 操作から返された JSON ドキュメントを編集できます。
例
この例を実行するには、空の MongoDB Playground から開始します。テンプレートの Playground がロードされている場合は、それをクリアします。
次の例:
testデータベースに切り替えます。クエリに一致する
test.salesコレクション内の 1 つのドキュメントを読み取ります。
use("test"); db.sales.findOne( { "_id" : 1 }, { "_id" : 0 } );
ボタンを押すと、VS Code Extension によって Playground が分裂され、次のドキュメントが Playground Result ペインに出力されます。分割ビューを無効にした場合、 VS Code拡張機能は次のドキュメントを新しいタブに出力します。Playground の結果を手動で移動した場合、 VS Code拡張機能ではそのタブに結果が表示されます。
{ item: 'abc', price: 10, quantity: 2, date: 2014-03-01T08:00:00.000Z }
多くのドキュメントの読み取り
多数のドキュメントを読み取るには、Playground で次の構文を使用します。
db.collection.find( { <query> }, { <projection> } )
このメソッドのパラメーターの詳細な説明については、MongoDB マニュアルのfind()を参照してください。
Playground を実行するには、Playground ビューの右上隅にある ボタンを押します。VS Code拡張機能は Playground を分割し、Playground の結果を Playground Results ペインに出力します。分割ビューを無効にした場合、 VS Code拡張機能は Playground の結果を新しいタブに出力します。
例
この例を実行するには、空の MongoDB Playground から開始します。テンプレートの Playground がロードされている場合は、それをクリアします。
次の例:
testデータベースに切り替えます。クエリに一致する
test.salesコレクション内のすべてのドキュメントを読み取ります。
use("test"); db.sales.find( { "item" : "abc" }, { "price" : 1 } );
ボタンを押すと、VS Code Extension によって Playground が分裂され、次のドキュメントが Playground Result ペインに出力されます。分割ビューを無効にした場合、 VS Code拡張機能は次のドキュメントを新しいタブに出力します。Playground の結果を手動で移動した場合、 VS Code拡張機能ではそのタブに結果が表示されます。
[ { _id: 2, price: 10 }, { _id: 6, price: 10 }, { _id: 9, price: 10 }, { _id: 1, price: 10 } ]
カーソルを使用したドキュメントの読み取り
プレイグラウンド内の最後の式が、 や db.collection.find()db.collection.aggregate()呼び出しなどの カーソル と評価されると、Visual Studio Code はカーソル結果ドキュメントブラウザ ビューで結果を開きます。
このビューでは、次の操作が可能です。
ビューの上部にページネーション コントロールが表示され、結果をページ処理します。
各ドキュメントを表のようなリストで表示します。ドキュメントはデフォルトでシェル構文で表示されます。
注意
Visual Studio Code では、カーソルを生成しない操作、例えば $out や $merge で終わる集計や、ドキュメントではない結果(文字列、数値、またはその他のスカラー値)に対しては、従来の結果エディターを引き続き使用します。
例
この例を実行するには、空の MongoDB Playground から開始します。テンプレートの Playground がロードされている場合は、それをクリアします。
次の例:
testデータベースに切り替えます。クエリに一致するすべてのドキュメントを
test.salesコレクションから読み取ります。最後の式としてカーソルを返します。
use("test"); db.sales.find( { "price": { $gte: 10 } }, { "price": 1 } );
ボタンをクリックすると、Visual Studio Code はカーソルが返したドキュメントを表示するドキュメントブラウザタブを開き、ビューの上部にページ分割制御が表示されます。
カーソル全体を配列として返す
カーソルを配列に変換し、ドキュメントブラウザではなく Playground Results エディターで直接表示する場合は、プレイグラウンドの最後の式としてカーソルで toArray() を呼び出します。
let cursor = db.collection.find({ <query> }); cursor.toArray();
ボタンを押すと、VS Code Extension によって Playground が分裂され、次のドキュメントが Playground Result ペインに出力されます。分割ビューを無効にした場合、 VS Code拡張機能は次のドキュメントを新しいタブに出力します。Playground の結果を手動で移動した場合、 VS Code拡張機能ではそのタブに結果が表示されます。
[ { "_id": 2, "price": 10 }, { "_id": 3, "price": 20 }, { "_id": 6, "price": 10 }, { "_id": 9, "price": 10 } ]
詳細
カーソルのメソッドと動作の詳細については、以下を参照してください。