MongoDB Query Language 是一种基于文档的查询措辞,它许可您根据各种条件来查询数据库中的文档。它支持各种操作符和功能,使您能够创建繁芜的查询和过滤器。
1. 基本查询
MongoDB Query Language 的基本查询语法如下:

```
db.collection.find(query, projection)
```
个中,`db` 是数据库名称,`collection` 是凑集名称,`query` 是查询条件,`projection` 是要返回的字段。
例如,要查询 `users` 凑集中所有的文档,您可以利用以下命令:
```
db.users.find({}, {_id: 0, name: 1, age: 1})
```
2. 查询条件
MongoDB Query Language 支持各种查询条件,例如即是(`$eq`)、不即是(`$ne`)、大于(`$gt`)、小于(`$lt`)、大于即是(`$gte`)、小于即是(`$lte`)、在(`$in`)、不在(`$nin`)等。
例如,要查询 `users` 凑集中年事大于 25 的文档,您可以利用以下命令:
```
db.users.find({age: {$gt: 25}})
```
3. 逻辑运算符
MongoDB Query Language 还支持逻辑运算符,例如 AND(`$and`)、OR(`$or`)和 NOT(`$not`)。
例如,要查询 `users` 凑集中年事大于 25 并且名字包含 "John" 的文档,您可以利用以下命令:
```
db.users.find({$and: [{age: {$gt: 25}}, {name: /John/}]})
```
4. 正则表达式
MongoDB Query Language 支持正则表达式,可以用来查找具有特定模式的文档。
例如,要查询 `users` 凑集中名字以 "J" 开头的文档,您可以利用以下命令:
```
db.users.find({name: /^J/})
```
5. 更新操作
MongoDB Query Language 还支持更新操作,可以用来修正凑集中的文档。
例如,要更新 `users` 凑集中 ID 为 123 的文档,将名字变动为 "New Name",您可以利用以下命令:
```
db.users.update({_id: ObjectId("123")}, {$set: {name: "New Name"}})
```
6. 删除操作
末了,MongoDB Query Language 支持删除操作,可以用来删除凑集中的文档。
例如,要删除 `users` 凑集中 ID 为 123 的文档,您可以利用以下命令:
```
db.users.remove({_id: ObjectId("123")})
```
总结一下,MongoDB Query Language 是非关系型数据库中的查询神器,它支持各种查询条件、逻辑运算符、正则表达式、更新和删除操作。通过深入理解和利用这些功能,您可以更有效地查询和操作 MongoDB 数据库中的文档。