MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB - Phản đối / Phản đối nhận xét với Đường ống tổng hợp

bạn có thể làm điều đó với bản cập nhật đường ống sau nhưng nó yêu cầu các mảng ủng hộ và phản đối tồn tại. ngay cả khi nó chỉ trống rỗng.

var comment_id = ObjectId("5e5983102328a83d1a4b541f");
var user_id = ObjectId("5e5983102328a83d1a4b53e5");

db.commentReputation.update(
    {
        commentId: comment_id
    },
    [
        {
            $set: {
                upvotes: {
                    $cond: [
                        { $in: [user_id, '$upvotes'] },
                        { $setDifference: ['$upvotes', [user_id]] },
                        { $setUnion: ['$upvotes', [user_id]] }
                    ]
                }
            }
        },
        {
            $set: {
                downvotes: {
                    $cond: [
                        { $in: [user_id, '$downvotes'] },
                        { $setDifference: ['$downvotes', [user_id]] },
                        '$downvotes'
                    ]
                }
            }
        }
    ]
);



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lọc mảng trong mongodb

  2. Tìm xem ai đó có sinh nhật trong 30 ngày tới với mongo hay không

  3. Vị trí địa lý Mongo sử dụng chỉ mục $ gần và 2d không chính xác

  4. junit test case sử dụng nhúng mongodb de.flapdoodle.embed.mongo

  5. Đừng GET req.query.name thành collection.find trong express và MongoDB