Learn the "why" behind slow queries and how to fix them in our 2-Part Webinar.
Register now >
Docs Menu
Docs Home
/ /

VS Code でのドキュメントの読み取り

MongoDB Playground で MongoDB CRUD 演算子を使用して、コレクション内のドキュメントを読み取ることができます。

  • findOne()メソッドを使用して 1 つのドキュメントを読み取ります。

  • 複数のドキュメントを読み取るには、 find()メソッドを使用します。

注意

ナビゲーション パネルの Documentsラベルにカーソルを合わせ、次をクリックすると、コレクションを検索するように事前構成された JavaScript Playgroundを開くことができます。表示されるアイコン。

まだ行っていない場合は、MongoDB Playground でドキュメントを読み取る前に以下の前提条件を完了しておく必要があります。

単一ドキュメントを読み取るには、Playground で次の構文を使用します。

db.collection.findOne(
{ <query> },
{ <projection> }
)

クエリを満たすドキュメントが複数ある場合、このメソッドではディスク上のドキュメントの順序を反映した 自然な順序に従って最初のドキュメントが返されます。

このメソッドのパラメーターの詳細については、MongoDB マニュアルのfindOne()を参照してください。

Playground を実行するには、Playground ビューの右上隅にある ボタンを押します。VS Code拡張機能は Playground を分割し、Playground の結果を Playground Results ペインに出力します。分割ビューを無効にした場合、 VS Code拡張機能は Playground の結果を新しいタブに出力します。

findOne() または find() 操作から返された JSON ドキュメントを編集できます。

1

このドキュメントの上部にある [ Edit Document ] をクリックします。 VS Code 拡張機能では、 <database>.<collection>:"<_id>"という名前の編集可能なEJSONドキュメントとして開きます。

ドキュメントに必要な編集を加えます。

2

編集したドキュメントを MongoDB database に保存するには、 Ctrl + S (Windows/Linux)またはCmd + Sを押します。

更新が成功した場合、 VS Code拡張機能はデータベースに変更が保存されていることを確認します。更新によってエラーが発生した場合、 VS Code拡張機能にはエラーが表示されます。

この例を実行するには、空の MongoDB Playground から開始します。テンプレートの Playground がロードされている場合は、それをクリアします。

次の例:

  1. test データベースに切り替えます。

  2. クエリに一致する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 がロードされている場合は、それをクリアします。

次の例:

  1. test データベースに切り替えます。

  2. クエリに一致する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 がロードされている場合は、それをクリアします。

次の例:

  1. test データベースに切り替えます。

  2. クエリに一致するすべてのドキュメントを test.salesコレクションから読み取ります。

  3. 最後の式としてカーソルを返します。

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
}
]

カーソルのメソッドと動作の詳細については、以下を参照してください。

戻る

作成

項目一覧