MongoDB 查询文档学习笔记

简介

MongoDB 是一种开源的文档数据库,它的查询语言非常灵活,能够支持多种不同类型的查询操作。本篇学习笔记将介绍 MongoDB 的查询文档操作。

常用的查询操作符

1. $eq

$eq 操作符用于判断字段是否等于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $eq: value } })

2. $ne

$ne 操作符用于判断字段是否不等于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $ne: value } })

3. $gt

$gt 操作符用于判断字段是否大于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $gt: value } })

4. $gte

$gte 操作符用于判断字段是否大于等于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $gte: value } })

5. $lt

$lt 操作符用于判断字段是否小于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $lt: value } })

6. $lte

$lte 操作符用于判断字段是否小于等于指定的值。

示例:

javascriptCopy Code
db.collection.find({ field: { $lte: value } })

7. $in

$in 操作符用于判断字段是否包含于指定的值数组中。

示例:

javascriptCopy Code
db.collection.find({ field: { $in: [value1, value2, ...] } })

8. $nin

$nin 操作符用于判断字段是否不包含于指定的值数组中。

示例:

javascriptCopy Code
db.collection.find({ field: { $nin: [value1, value2, ...] } })

9. $exists

$exists 操作符用于判断字段是否存在。

示例:

javascriptCopy Code
db.collection.find({ field: { $exists: true/false } })

10. $type

$type 操作符用于判断字段的数据类型。

示例:

javascriptCopy Code
db.collection.find({ field: { $type: "string/int/..."} })

实例

下面是一个具体的实例,我们假设现在有一个名为 users 的集合,其中保存了一些用户的信息。

1. 查询年龄大于等于 18 岁的用户

javascriptCopy Code
db.users.find({ age: { $gte: 18 } })

2. 查询身高在 170 至 180 之间且性别为男的用户

javascriptCopy Code
db.users.find({ height: { $gte: 170, $lte: 180 }, gender: 'male' })

3. 查询姓名为 "张三" 或 "李四" 的用户

javascriptCopy Code
db.users.find({ name: { $in: ['张三', '李四'] } })

4. 查询没有电话号码的用户

javascriptCopy Code
db.users.find({ phone: { $exists: false } })

总结

本篇学习笔记介绍了 MongoDB 的查询文档操作,包括常用的查询操作符和实际应用场景的实例。在实际应用中,我们可以根据具体的需求进行不同的查询操作,以达到快速、准确地获取数据的目的。