MongoDB常用语法
时间: 2025-05-04 11:50:38 浏览: 42
### MongoDB 常用查询语句及操作语法
#### 查询基础
在 MongoDB 中,`find()` 方法用于检索集合中的文档。基本形式如下:
```javascript
db.collection.find(query, projection);
```
其中 `query` 是匹配条件,而 `projection` 可选参数指定返回字段。
对于简单的全量查询可以省略条件部分[^2]:
```javascript
db.userInfo.find();
```
#### 正则表达式查询
当需要查找特定模式的数据时,可利用正则表达式实现模糊匹配。例如,查询名字以 "mongo" 开头的记录:
```javascript
db.userInfo.find({ name: /^mongo/ });
```
这相当于 SQL 的 `LIKE 'mongo%'` 功能。
#### 条件否定查询
如果希望获取不满足某些条件的结果,则可以通过 `$not` 运算符来完成这一需求[^3]。比如寻找那些键值不符合给定情况的所有条目:
```javascript
db.collection.find({ key: { $not: { $gt: 10 } }});
```
上述例子表示选取所有非大于10的key对应的文档。
#### 数据排序
为了按照某个字段升序或者降序排列结果集,在 find 后追加 sort 方法即可[^4]。下面展示的是基于更新时间做逆向排序的例子:
```javascript
db.collection.find().sort({ update_time: -1 });
```
这里 `-1` 表明采用从新到旧的方式呈现;相对应地,设置为 `1` 则意味着按顺序从小至大读取数据。
#### 聚合框架简介
聚合管道允许我们执行一系列阶段性的转换处理流程,最终得到所需统计信息或其他复杂计算成果。其结构由多个阶段组成,每个阶段都应用一种特定的操作类型[^1]。一个典型的场景就是通过分组汇总统计数据:
```javascript
db.orders.aggregate([
{ $match: { status: "A" } },
{ $group: { _id: "$cust_id", total: { $sum: "$amount" } } }
]);
```
此脚本先过滤状态等于"A"订单,再依据客户ID分类并累加金额总数。
---
阅读全文
相关推荐




















