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

Превод на sql заявка на език Mongo

Да предположим, че имате тези документи във вашите events :

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

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

Не можете да използвате обикновен find() заявка. Трябва да използвате агрегиране:

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

резултатът е:

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



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Актуализирайте масива в mongo и upsert

  2. Преобразувайте MongoDB данни при намиране

  3. Как мога да използвам not like на laravel mongodb?

  4. Вземете стойности като масив от елементи след $lookup

  5. Възможно ли е директно запитване към поддокументи с помощта на mongoose?