MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBドキュメントからemail-idを取得し、print()で表示する方法

MongoDBドキュメントからemail-idを取得し、print()で表示するには?

MongoDBのコレクションに保存されたドキュメントから、特定のフィールド(ここではemail-id)だけを取り出して表示したい場合、forEach()print()を組み合わせるのが最も簡単な方法です。この記事では、実際にサンプルコレクションを作成しながら、手順を段階的に解説します。

ステップ1:サンプルコレクションの作成

まず、insertOne()メソッドを使って、ユーザー名(UserName)とメールアドレス(UserEmailId)を含むドキュメントを3件挿入します。

> db.demo690.insertOne({"UserName":"John","UserEmailId":"John@gmail.com"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6db31551299a9f98c939c")
}
> db.demo690.insertOne({"UserName":"Bob","UserEmailId":"Bob@gmail.com"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6db3c551299a9f98c939d")
}
> db.demo690.insertOne({"UserName":"David","UserEmailId":"David@gmail.com"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6db47551299a9f98c939e")
}

ステップ2:find()メソッドですべてのドキュメントを確認

find()メソッドを使用すると、コレクション内のすべてのドキュメントを表示できます。

> db.demo690.find();

上記のクエリを実行すると、次のような出力が得られます。

{ "_id" : ObjectId("5ea6db31551299a9f98c939c"), "UserName" : "John", "UserEmailId" : "John@gmail.com" }
{ "_id" : ObjectId("5ea6db3c551299a9f98c939d"), "UserName" : "Bob", "UserEmailId" : "Bob@gmail.com" }
{ "_id" : ObjectId("5ea6db47551299a9f98c939e"), "UserName" : "David", "UserEmailId" : "David@gmail.com" }

ステップ3:forEach()とprint()でemail-idのみを表示

以下が、MongoDBドキュメントからemail-idを取得し、print()を使って表示するためのクエリです。find()で取得した各ドキュメントに対して、forEach()のコールバック関数内でprint()を呼び出すことで、UserEmailIdフィールドの値だけが出力されます。

> db.demo690.find().forEach(function(document) {
...    print(document.UserEmailId);
... });

このクエリを実行すると、次の出力が得られます。

John@gmail.com
Bob@gmail.com
David@gmail.com

補足:プロジェクションでより効率的に取得する

大量のドキュメントを扱う場合は、find()の第2引数でプロジェクション(射影)を指定すると、サーバー側で必要なフィールドだけを取得できるため、ネットワーク転送量を削減できます。

> db.demo690.find({}, { "UserEmailId": 1, "_id": 0 }).forEach(function(doc) {
...    print(doc.UserEmailId);
... });

このように、forEach()とprint()の組み合わせはデバッグや動作確認に非常に便利です。さらにプロジェクションを併用することで、必要なデータだけを効率よく取り出せるようになります。

  1. ユーザー入力から数値を取得し、JavaScriptでコンソールに表示する方法

    document.querySelectorでユーザー入力を取得する JavaScriptでは、document.querySelector(#id名)を使用することで、ユーザーがボタンをクリックしたタイミングで入力フィールドの値を簡単に取得できます。IDセレクタで要素を指定する場合は、先頭に「#」を付けるのがポイントです。 以下は、ユーザーが入力した数値をボタンクリック時に取得し、コンソールに表示するJavaScriptコードのサンプルです。 コード例 <!DOCTYPE html> <html lang="en"> <head> &l

  2. JavaScriptでtrタグのidを取得し、新しいtdセルに表示する方法

    はじめにHTMLテーブルの各行(<tr>タグ)に設定されたid属性を取得し、それを新しい<td>セルとして表示したいケースは開発現場でよく見られます。本記事では、JavaScriptのdocument.querySelectorAll()メソッドとinsertCell()メソッドを組み合わせて実現する方法を、実際のコード例とともにわかりやすく解説します。サンプルテーブルの準備まず、例として次のようなテーブルを用意します。<table>   <tr id=StudentDetails>      &