Logo
Section 1 / 7

基本查询操作符:比较操作符和逻辑操作符

学习使用 MongoDB 查询操作符,包括比较操作符、逻辑操作符和元素操作符,根据特定条件、文档存在性以及数据类型来筛选和获取数据。

导入

基本查询操作符:比较操作符和逻辑操作符

学习使用 MongoDB 查询操作符,包括比较操作符、逻辑操作符和元素操作符,根据特定条件、文档存在性以及数据类型来筛选和获取数据。

表格

操作符描述
$eq匹配等于指定值的文档
$gt匹配大于指定值的文档
$gte匹配大于或等于指定值的文档
$lt匹配小于指定值的文档
$lte匹配小于或等于指定值的文档
$ne匹配不等于指定值的文档
1db.users.find({"address.city": {$eq: "San Francisco"}}).limit(2) 2 3db.products.find({price: {$gt: 300}}).limit(2) 4 5db.reviews.find({rating: {$lte: 3}}).limit(2) 6 7db.orders.find({status: {$ne: "Delivered"}}).limit(2)

表格

操作符描述
$and匹配满足所有条件的文档
$or匹配满足任意条件的文档
$not反转一个条件
$nor匹配不满足任何条件的文档
1db.products.find({ $or: [ 2{ inStock: false }, 3{ rating: { $lt: 3 } } 4] }).limit(2) 5 6db.products.find({ $and: [ 7{ inStock: true }, 8{ price: { $gt: 50 } } 9] }).limit(2) 10 11db.products.find({ inStock: { $not: { $eq: false } } }).limit(2) 12 13db.users.find({ $nor: [ 14{ "address.city": "Seattle" }, 15{ "address.city": "Jacksonville" } 16]}).limit(2)
1{ price: { gt: 300 } } // 错误 2{ price: { $gt: 300 } } // 正确
1// 错误:此写法不正确,因为将 $eq 用在了字段名上。 2db.users.find({ $eq: { "address.city": "Seattle" } }) 3 4// 正确:此写法有效,因为 $eq 是作用于值上的。 5db.users.find({ "address.city": { $eq: "Seattle" } })
1// 错误:此写法无法生效,因为缺少字段名。 2db.products.find({ $gt: 300 }) 3 4// 正确:此写法有效,因为指定了字段(price)。 5db.products.find({ price: { $gt: 300 } })
1// 任务 1 2 3// 任务 2 4 5// 任务 3

基本的增删改查操作

基本查询操作符:元素操作符