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