$eq:等于
db.collection.find({ field: { $eq: value } });
$ne:不等于
db.collection.find({ field: { $ne: value } });
$gt:大于
db.collection.find({ field: { $gt: value } });
$lt:小于
db.collection.find({ field: { $lt: value } });
$gte:大于等于
db.collection.find({ field: { $gte: value } });
$lte:小于等于
db.collection.find({ field: { $lte: value } });
$and:逻辑与
db.collection.find({ $and: [ { field1: value1 }, { field2: value2 } ] });
$or:逻辑或
db.collection.find({ $or: [ { field1: value1 }, { field2: value2 } ] });
$not:逻辑非
db.collection.find({ field: { $not: { $regex: /pattern/ } } });
$nor:逻辑非或
db.collection.find({ $nor: [ { field1: value1 }, { field2: value2 } ] });
$exists:检查字段是否存在
db.collection.find({ field: { $exists: true } });
$type:检查字段的数据类型
db.collection.find({ field: { $type: "string" } });
$all:匹配数组中所有指定值
db.collection.find({ field: { $all: [value1, value2] } });
$elemMatch:匹配数组中满足指定条件的元素
db.collection.find({ field: { $elemMatch: { subField: value } } });
$size:匹配数组的大小
db.collection.find({ field: { $size: 3 } });
$regex:匹配正则表达式
db.collection.find({ field: { $regex: /pattern/ } });
$options:指定正则表达式选项
db.collection.find({ field: { $regex: /pattern/, $options: "i" } });
$set:设置字段的值
db.collection.updateOne({ _id: id }, { $set: { field: value } });
$unset:删除字段
db.collection.updateOne({ _id: id }, { $unset: { field: "" } });
$inc:增加字段的值
db.collection.updateOne({ _id: id }, { $inc: { field: 1 } });
$mul:乘以字段的值
db.collection.updateOne({ _id: id }, { $mul: { field: 2 } });
$rename:重命名字段
db.collection.updateOne({ _id: id }, { $rename: { oldField: "newField" } });
$push:向数组中添加一个或多个元素
db.collection.updateOne({ _id: id }, { $push: { field: value } });
$addToSet:向数组中添加一个元素,如果元素不存在
db.collection.updateOne({ _id: id }, { $addToSet: { field: value } });
$pop:从数组中移除第一个或最后一个元素
db.collection.updateOne({ _id: id }, { $pop: { field: 1 } });
$pull:从数组中移除所有匹配的元素
db.collection.updateOne({ _id: id }, { $pull: { field: value } });
$pullAll:从数组中移除所有指定的元素
db.collection.updateOne({ _id: id }, { $pullAll: { field: [value1, value2] } });
$slice:限制数组的大小或获取数组的一个子集
db.collection.updateOne({ _id: id }, { $push: { field: { $each: [value1, value2], $slice: 5 } } });
$sum:计算总和
db.collection.aggregate([
{ $group: { _id: null, total: { $sum: "$field" } } }
]);
$avg:计算平均值
db.collection.aggregate([
{ $group: { _id: null, average: { $avg: "$field" } } }
]);
$max:找出最大值
db.collection.aggregate([
{ $group: { _id: null, maximum: { $max: "$field" } } }
]);
$min:找出最小值
db.collection.aggregate([
{ $group: { _id: null, minimum: { $min: "$field" } } }
]);
$match:筛选文档
db.collection.aggregate([
{ $match: { field: value } }
]);
$project:选择要包含的字段
db.collection.aggregate([
{ $project: { field1: 1, field2: 1 } }
]);
$sort:排序结果
db.collection.aggregate([
{ $sort: { field: 1 } }
]);
$limit:限制结果数量
db.collection.aggregate([
{ $limit: 10 }
]);
$skip:跳过指定数量的结果
db.collection.aggregate([
{ $skip: 5 }
]);