Mongo 14.07.2024
This commit is contained in:
parent
36169dc3b0
commit
beeb68c40f
@ -45,6 +45,19 @@ db.users.find({name: {$type: "string"}})
|
|||||||
db.users.find({name: {$regex: "om$"}})
|
db.users.find({name: {$regex: "om$"}})
|
||||||
db.users.replaceOne({name: "Tom"}, {name: "Bob", age: 2}, {upsert: true}) //Полностью заменяет документ. Если upsert true, то документ будет создан, если не найдёт
|
db.users.replaceOne({name: "Tom"}, {name: "Bob", age: 2}, {upsert: true}) //Полностью заменяет документ. Если upsert true, то документ будет создан, если не найдёт
|
||||||
db.users.updateOne({name: "Tom"}, {$set: {salary: 300}, $inc: {age: 2}})
|
db.users.updateOne({name: "Tom"}, {$set: {salary: 300}, $inc: {age: 2}})
|
||||||
|
db.users.updateOne({name: "Tom"}, {$unset: {salary: 1}}) // Установить salary
|
||||||
|
db.users.updateOne({name: "Tom"}, {$push: {languages: "rus"}})
|
||||||
|
db.users.updateOne({name: "Tom"}, {$push: {languages: {$each: ["lang1", "lang2"]}}})
|
||||||
|
db.users.updateOne({name: "Tom"}, {$push: {languages: {$each: ["lang3", "lang4"], $position: 1, $slice: 5}}}) // Вставит с первого индекса и оставит только 5 элементов
|
||||||
|
db.users.updateOne({name: "Tom"}, {$addToSet: {languages: "rus"}}) // Push без дупликатов
|
||||||
|
db.users.updateOne({name: "Tom"}, {$pop: {languages: 1}}) // Удалить последний
|
||||||
|
db.users.updateOne({name: "Tom"}, {$pop: {languages: -1}}) // Удалить первый
|
||||||
|
db.users.updateOne({name: "Tom"}, {$pull: {languages: "eng"}}) // Удалить eng из языков
|
||||||
|
db.users.updateOne({name: "Tom"}, {$pullAll: {languages: ["eng", "rus"]}})
|
||||||
|
db.users.deleteOne({name: "Bob"})
|
||||||
|
db.users.deleteMany({name: /B\w+/i})
|
||||||
|
db.users.drop()
|
||||||
|
db.dropDatabase()
|
||||||
```
|
```
|
||||||
|
|
||||||
## Курсоры
|
## Курсоры
|
||||||
@ -81,3 +94,12 @@ cursor.limit(5);null; // Поставить лимит без вывода да
|
|||||||
* $all - определяет набор значений, все из которых должны быть в массиве
|
* $all - определяет набор значений, все из которых должны быть в массиве
|
||||||
* $size - орпделяет кол-во элементов
|
* $size - орпделяет кол-во элементов
|
||||||
* $elemMatch - определяет условие, которым должны соответсвовать элементы в массиве
|
* $elemMatch - определяет условие, которым должны соответсвовать элементы в массиве
|
||||||
|
|
||||||
|
## Связывание документов
|
||||||
|
|
||||||
|
```js
|
||||||
|
google = db.companies.insertOne({name: "google", year: 1998})
|
||||||
|
sam = ({name: "Sam", age: 25, company: {$ref: "companies", $id: google.insertedId}})
|
||||||
|
db.users.insertOne(sam)
|
||||||
|
db.companies.findOne({_id: sam.company.$id})
|
||||||
|
```
|
||||||
|
Reference in New Issue
Block a user