Я вижу неожиданный результат при запросе с помощью «||» и «» & & «операции кондиционирования. Похоже, это ошибка.MongoDB: Операторы Conditon "||" и «&&» возвращает неожиданный результат
Версия:
C: \ MongoDB \ Bin> mongo.exe -версия MongoDB версия оболочки: 2.4.6
C: \ MongoDB \ Bin> C: \ MongoDB \ Bin> mongod .exe -версия дб версия v2.4.6 Вт 8 октября 16: 08: 54,073 версия мерзавец: b9925db5eac369d77a3a5f5d98a145eaaacd9673
базы данных записей: ~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
C: \ MongoDB \ Bin>
>
db.cars.find() { "_id": 100, "доступен": 1, "цвет": "красный", " имя ":" GTO "," год ": 3939}
db.cars.find ({доступно: 1, год: 3939}) {" _id ": 100," available ": 1," color " : "красный", "имя": "GTO", "год": 3939}
>
db.cars.find ({$, где: "this.available == 1" & & "this.year == 3939"}) { "_id": 100, "доступен": 1, " цвет ": "красный", "имя": "GTO", "год": 3939}
> >
db.cars.find ({$, где:" this.available == 1 "|| «this.year == 3939»}) {«_id»: 100, «доступно»: 1, «цвет»: «красный», «имя»: «GTO», «год»: 3939}
Проблема видел: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Следующая команда использует OR условие (т. е. используя ||), и только одно условие истинно. Но запись не отображается. Это неверно.db.cars.find ({$, где: "this.available == 11" || "this.year == 3939"})
Следующая команда использует и условия работы (т.е. с использованием & &) и только одно условие истинно, но отображается сообщение, которое является неправильным. Для условия AND оба выражения должны возвращать TRUE.db.cars.find ({$, где: "this.available == 11" & & "this.year == 3939"}) { "_id": 100, "доступен": 1, "цвет" : «красный», «имя»: «GTO», «год»: 3939)
Пожалуйста, дайте мне знать, если я пропустил что-либо.
С уважением Jayanna Hallur аналитик Big Data, Wipro Technologies, Бангалор