MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

cara menghindari $push-ing nulls dalam kerangka agregasi mongo

Agak terlambat ke pesta, tapi..

Saya ingin melakukan hal yang sama, dan ternyata saya bisa melakukannya dengan ekspresi seperti ini:

  // Pushes events only if they have the value 'A'
  "events": {
    "$push": {
      "$cond": [
        {
          "$eq": [
            "$event",
            "A"
          ]
        },
        "A",
        "$noval"
      ]
    }
  }

Pemikiran di sini adalah ketika Anda melakukan

{ "$push": "$event" } 

maka tampaknya hanya mendorong nilai non-null.

Jadi saya membuat kolom yang tidak ada, $noval, untuk dikembalikan sebagai kondisi palsu dari $cond saya.

Tampaknya bekerja. Saya tidak yakin apakah itu non-standar dan karena itu rentan terhadap kerusakan suatu hari tapi..



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb mengembalikan koleksi lama

  2. Bagaimana cara terhubung dengan mongodb menggunakan sailsjs v0.10?

  3. Tidak dapat menghapus, membersihkan, unistall mongodb dari debian

  4. Saat menggunakan rmongodb, tidak dapat melihat koleksi di mongoDB

  5. Konstruksi Kueri MongoDb C# GeoNear