MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

LEFT JOIN с GROUP by в MongoDB

Концепциите за „присъединяване“ всъщност не съществуват в Mongodb, тъй като говорим за неструктурирана база данни по природа, тогава в някакъв момент $lookup беше добавен и ни даде възможност за „ляво свързване“, но все пак смятам, че е „погрешно“ да използваме тези структурирани концепции, когато работим с Mongo.

С това казано, следният тръбопровод трябва да задоволи вашите нужди:

db.Orders.aggregate([
    {
        $group: {
            _id: "$product_id",
            sum: {$sum : 1}
        }
    },
    {
        $lookup: {
            from: "product",
            local_field: "_id",
            foreign_field: "_id",
            as: "product"
        }
    },
    {
        $unwind: "$product"
    },
    {
        $project: {
            Product_id: "$_id",
            OrderCount: "$sum",
            ProductName: "$product.Name"
        }

    }
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да съхранявам стойности на сесии с Node.js и mongodb?

  2. Как мога да преобразувам низ към дата с агрегиране на mongo?

  3. Как да напиша заявка за получаване на различни стойности от колекцията на mongodb?

  4. Не можете да получите достъп до mongodb през браузър - изглежда, че се опитвате да получите достъп до MongoDB през HTTP на родния порт на драйвера

  5. Pymongo/bson:Преобразуване на python.cursor.Cursor обект в сериализуем/JSON обект