Логические операторы в MongoDB

В данном уроке мы рассмотрим логические операторы. Как и условные операторы они делают наши запросы более гибкими.

Оператор $and

Оператор $and принимает массив с условиями и выбирает документы, которые удовлетворяют всем условиям из массива:

javascriptlet cond = {$and: [
  {age: {$gte: 25}},
  {age: {$lte: 29}},
]};

let res = await coll.find(cond).toArray();
console.log(res);
Задание 1

Расскажите, что выбирает приведенное в примере условие.

Задание 2

Придумайте и напишите три примера использования изученного оператора.

Оператор $or

Оператор $or принимает массив с условиями и выбирает документы, которые удовлетворяют хотя бы одному условию из массива:

javascriptlet cond = { $or: [
  {age: {$lte: 26}}, {salary: 300}
]};

let res = await coll.find(cond).toArray();
console.log(res);
Задание 3

Расскажите, что выбирает приведенное в примере условие.

Задание 4

Придумайте и напишите три примера использования изученного оператора.

Оператор $not

Оператор $not выполняет операцию отрицания. Он выбирает все документы, которые не удовлетворяют объекту с условиями. Пример:

javascriptlet cond = {age: {$not: {$gt: 26, $lt: 29}}};
let res = await coll.find(cond).toArray();
console.log(res);
Задание 5

Расскажите, что выбирает приведенное в примере условие.

Задание 6

Придумайте и напишите три примера использования изученного оператора.