# Условные операторы в MongoDB

В данном уроке мы рассмотрим условные операторы. Они нам помогают выбирать документы, подходящие по определенным условиям, добавляют гибкость нашим запросам.

## Оператор $lt

Оператор `$lt` выбирает все документы, в которых заданное поле меньше переданного значения:

`let cond = {age: {$lt: 27}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена меньше `500`.

## Оператор $gt

Оператор `$gt` выбирает все документы, в которых заданное поле больше определенного значения:

`let cond = {age: {$gt: 26}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена больше `500`.

## Оператор $lte

Оператор выбирает все документы, в которых заданное поле меньше либо равно переданного значения:

`let cond = {age: {$lte: 27}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите пользователей, чей возраст меньше либо равен `44`.

Получите продукты, у которых цена меньше или равна `500`.

## Оператор $gte

Оператор выбирает все документы, в которых заданное поле больше либо равно определенного значения:

`let cond = {age: {$gte: 26}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена больше или равна `500`.

## Оператор $eq

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

`let cond = {age: {$eq: 25}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена равна `500`.

## Оператор $ne

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

`let cond = {age: {$ne: 25}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена не равна `500`.

## Оператор $in

Оператор выбирает все документы, в которых заданное поле равно одному из значений переданного массива:

`let cond = {age: {$in: [25, 26]}}; let res = await coll.find(cond).toArray(); console.log(res);`

Получите продукты, у которых цена равна `500`, `600` или `700`.

## Оператор $nin

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

`let cond = {age: {$nin: [25, 26]}}; let res = await coll.find(cond).toArray();`

Получите продукты, у которых цена не равна `100` или `200`.

## Использование с другими методами

Условные операторы также можно использовать с методами обновления коллекции или удаления документов:

`let cond = {age: {$lte: 27}}; let data = {$set: {salary: 1000}}; await coll.updateMany(cond, data);`

Удалите все продукты, у которых цена больше `300`.

Удалите все продукты, у которых цена равна `100` или `200`.

←→
↑