# 查询文档（find、findOne）

URL: https://caijiao.org/mongodb/02-basics/05-find
Source: docs/mongodb/02-basics/05-find.md
Description: 本章节介绍 MongoDB 中使用 'find' 和 'findOne' 方法查询文档的基本操作，帮助用户灵活获取所需数据。

[MongoDB](/mongodb/) 提供丰富的查询接口，`find` 和 `findOne` 是最常用的两种查询方法，用于检索集合中的文档。

## 使用 `find()`

`find()` 返回符合条件的所有文档的游标（cursor），可用于遍历或转成数组。

示例：查询 `users` 集合中年龄大于 25 的所有文档：

```js
db.users.find({ age: { $gt: 25 } })
````

可以链式调用限制返回数量或排序：

```js
db.users.find({ age: { $gt: 25 } }).limit(5).sort({ age: -1 })
```

如果不传条件，`find()` 会返回集合中所有文档。

## 使用 `findOne()`

`findOne()` 返回符合条件的第一条文档（对象），适合快速获取单条数据。

示例：查询名字为 "Alice" 的文档：

```js
db.users.findOne({ name: "Alice" })
```

如果没有匹配结果，返回 `null`。

---

通过灵活使用 `find` 和 `findOne`，用户可以实现复杂的数据查询，满足各种应用需求。
