sql >> データベース >  >> NoSQL >> MongoDB

MONGOは、ドキュメントの名前のみを取得し、ドキュメント全体は取得しません

    .find()の2番目のパラメーターを使用できます プロジェクション を指定するメソッド :

    db.companies.find({}, { _id: 0, company_name: 1 })
    

    これは次を返します:

    { "company_name" : "gmc" }
    { "company_name" : "tesla" }
    ...
    

    または、Aggregation Frameworkを使用して、名前の配列を持つ単一のドキュメントを取得できます。

    db.companies.aggregate([{ $group: { _id: null, company_names: { $push: "$company_name" } } }])
    

    これは次を返します:

    { "_id" : null, "company_names" : [ "gmc", "tesla", ... ] }
    

    company_nameにインデックスがある場合は、最初の方法が最速の方法です。 。その場合、クエリはコレクションをスキャンする必要はなく、インデックスのみを使用してクエリされたデータを取得できます(対象クエリ




    1. PythonとMongoDBデータベースの開発

    2. Javaを使用してMongoDBでワイルドカード検索を実行する方法

    3. MongoDB $ setは、フィールドだけを書き込むのですか、それともドキュメント全体を書き込むのですか?

    4. RedisPubサブチャネルメモリ