MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Warunek zapytania MongoDb przy porównaniu 2 pól

Możesz użyć $gdzie. Pamiętaj tylko, że będzie to dość powolne (musi wykonać kod JavaScript na każdym rekordzie), więc połącz z indeksowanymi zapytaniami, jeśli możesz.

db.T.find( { $where: function() { return this.Grade1 > this.Grade2 } } );

lub bardziej kompaktowy:

db.T.find( { $where : "this.Grade1 > this.Grade2" } );

UPD dla mongodb v.3.6+

możesz użyć $expr jak opisano w ostatniej odpowiedzi



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongod HostnameCanonicalizationWorker błąd w systemie OS X

  2. MongoDB $setOnInsert

  3. Pola wynikowe Mongoose/MongoDB są wyświetlane jako niezdefiniowane w JavaScript

  4. pobierz obiekt mongodb _id po upsert z php

  5. MongoDB:brak pamięci