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

Bản dịch của truy vấn sql sang Mongo uể oải

Giả sử bạn có những tài liệu này trong events của mình :

{
    "_id" : ObjectId("54cdfde528bb923955eff8b4"),
    "v1" : 35,
    "v2" : 10
}

/* 1 */
{
    "_id" : ObjectId("54cdfde928bb923955eff8b5"),
    "v1" : 10,
    "v2" : 20
}

Bạn không thể sử dụng find() đơn giản truy vấn. Bạn nên sử dụng kết hợp:

db.events.aggregate(
[    
    { $project : { 'diff' : { $subtract : ['$v1', '$v2'] }, v1 : 1, v2 : 1 } },
    { $match : { diff : { $gt : 20} } },
    { $project : { v1 : 1, v2 : 1 } },
]).result

kết quả là:

{
    "0" : {
        "_id" : ObjectId("54cdfde528bb923955eff8b4"),
        "v1" : 35,
        "v2" : 10
    }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Truy vấn MongoDB bên trong một mảng lồng nhau

  2. Mẹo để chạy MongoDB trong sản xuất bằng cách sử dụng các luồng thay đổi

  3. nhân bản một bộ sưu tập vào chính nó

  4. Sử dụng SqlBulkCopy với MongoDB

  5. MongoDB 4.x Real Time Sync to ElasticSearch 6.x +