Overview
このページでは、 MongoDBからデータを読み取るために使用できる一般的なRubyドライバー メソッドを示すコピー可能なコード例があります。
Tip
このページに記載されているメソッドの詳細については、各セクションに提供されているリンクを参照してください。
このページの例を使用するには、コード例を以下の サンプルアプリケーション または 独自のアプリケーションにコピーします。<connection string URI> などのコード例内のすべてのプレースホルダーを、 MongoDBデプロイに関連する値に置き換えてください。
サンプル アプリケーション
次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。
RubyプロジェクトにRubyドライバーがインストールされていることを確認してください。
次のコードをコピーし、新しい
.rbファイルに貼り付けます。このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。
require 'bundler/inline'
gemfile do source 'https://rubygems.org' gem 'mongo'end
uri = '<connection string>'
Mongo::Client.new(uri) do |client| database = client.use('<database name>') collection = database['<collection name>']
# Start example code here
# End example code hereend1件を特定
次の例では、指定されたフィルターで指定された条件に一致するドキュメントを検索します。
document = collection.find(name: '<value>').firstputs documentfirstメソッドの詳細については、「データの取得」ガイドを参照してください。
複数検索
次の例では、指定されたフィルターで指定された条件に一致するすべてのドキュメントを検索します。
results = collection.find(founded_year: '<value>')findメソッドの詳細については、「データの取得」ガイドを参照してください。
コレクション内のドキュメントをカウント
次の例では、指定された コレクション内のドキュメントの数を返します。
result = collection.count_documentsputs "Number of documents: #{result}"count_documentsメソッドについて詳しくは、「ドキュメントのカウントガイド」を参照してください。
クエリから返されたドキュメントをカウントする
次の例では、指定されたコレクション内のクエリ条件に一致するドキュメントの数を返します。
result = collection.count_documents('key': '<value>')puts "value: #{result}"countDocuments()メソッドについて詳しくは、「ドキュメントのカウントガイド」を参照してください。
推定ドキュメント数
次の例では、コレクションのメタデータに基づいて、指定されたコレクション内のドキュメントのおおよその数を返します。
result = collection.estimated_document_countputs "Estimated number of documents: #{result}"estimated_document_count()メソッドについて詳しくは、「ドキュメントのカウントガイド」を参照してください。
Retrieve Distinct Values
次の例では、指定されたコレクション内の指定されたフィールド名のすべての個別の値を返します。
results = collection.distinct('field')distinctメソッドの詳細については、「個別のフィールド値の取得 」ガイドを参照してください。
データの変更を監視
次の例では、特定のコレクションの変更ストリームを作成し、そのコレクション内の後続の変更イベントを出力します。
stream = collection.watchcollection.insert_one(a: 1)doc = stream.firstprocess(doc)watch()メソッドの詳細については、「データの変更を監視 」のガイドを参照してください。