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

Concat int и полета за низов масив, които са в различни масиви

Можете да използвате агрегирането по-долу

db.collection.aggregate([
  { "$project": {
    "itemQtyList": {
      "$reduce": {
        "input": { "$range": [0, { "$size": "$sale.soldItems" }] },
        "initialValue": "",
        "in": {
          "$concat": [
            "$$value",
            { "$cond": [{ "$eq": ["$$this", 0] }, "", " \n "] },
            { "$toString": {
              "$arrayElemAt": [
                "$sale.soldItems.qty",
                "$$this"
              ]
            }},
            " ",
            { "$arrayElemAt": ["$sale.items.unit", "$$this"] }
          ]
        }
      }
    }
  }}
])

MongoPlayground




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $tan

  2. Команда LIKE в MongoDB(mongomapper)

  3. Агрегиране и намаляване на вложен масив въз основа на ObjectId

  4. mongoDB upsert върху масив

  5. Каква е разликата между mongoose и mongoJS? Кое да използвам?