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

2つのフィールドを持つMongoDB集約配列

    集計カーソルの map( ) 次のようにObjectIdの配列を返すメソッド:

    var pipeline = [
        {$match: {warehouse_sku: /^1\_/}},
        {$group: { "_id": "$_id" } }
    ],
    list_products = db.getCollection('products')
                      .aggregate(pipeline)
                      .map(function(doc){ return doc._id });
    

    find() カーソルの map() ここでも機能します:

    var query = {'warehouse_sku': /^1\_/},
        list_products = db.getCollection('products')
                          .find(query)
                          .map(function(doc){ return doc._id });
    

    更新

    pymongoでは、 ラムダ を使用できます。 マップ機能で機能します。 mapは関数が渡されることを想定しているため、ラムダが日常的に表示される場所の1つでもあります。

    import re
    regx = re.compile("^1\_", re.IGNORECASE)
    products_cursor = db.products.find({"warehouse_sku": regx})
    list_products = list(map((lambda doc: doc["_id"]), products_cursor))
    



    1. オーバーロードされたプロパティApp\Dossier ::$programの間接的な変更は効果がありません

    2. MongoDBコールバックから参照エラーがスローされない

    3. Apollo / GraphQL:ネストされた要素を取得する方法は?

    4. Nodejs + Mongo dbは、ユーザー名とパスワードを使用してサーバーデータベースに接続します