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

Menambahkan skor ke agregasi MongoDB menggunakan $switch

Sepertinya {"name": "sitt"} selalu memutuskan untuk benar . Anda sebaiknya menggunakan **$eq** operator untuk membuatnya bekerja.

perhatikan juga bahwa **$match** . Anda stage dapat disederhanakan karena 3 ekspresi Anda setara dengan

{$match: {name: /sitt/i}}

sehingga kueri Anda menjadi:

db.getCollection('tags').aggregate([
   {
      $match:{
         name:/sitt/i
      }
   },
   {
      $project:{
         name: 1,
         score:{
            $switch:{
               branches:[
                  {
                     case:{
                        $eq:[
                           "$name",
                           "sitt"
                        ]
                     },
                     then:100
                  }
               ],
               default:50
            }
         }
      }
   }
])


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB Pesanan/grup agregasi penjualan Per Bulan Jumlah Total + Bidang Hitung

  2. Dapatkan semua kemungkinan kombinasi dari array di agregasi MongoDB

  3. Koleksi sortir sisi klien meteor

  4. Admin Django dan MongoDB, mungkinkah?

  5. $lookup ketika foreignField berada di array bersarang