Skip to content

Mongo 基础操作

使用 mongoose 操作 db

基础操作备忘

数组键值插入

js
const value = 4;
const array = [1, 2, 3];

// 插入多值
Model.updateOne({ _id }, { $addToSet: { key: { $each: array } } });
// 插入单个值
Model.updateOne({ _id }, { $addToSet: { key: 4 } });

数组键值删除

js
const value = 4;
const array = [1, 2, 3];

// 删除多值
Model.updateOne({ _id }, { $pull: { key: { $in: array } } });
// 删除单个值
Model.updateOne({ _id }, { $pull: { key: value } });

使用 js 对象

当不需要对 document 进行操作时

可以使用 .lean() 将 document 转换为 js object

js
const existingPhotos = await this.photoModel
  .find(
    { _id: { $in: photos } },
    { _id: 1 } // 只返回 _id 字段
  )
  .lean();

模糊查询

typescript
const filter = { name: "snowinlu" };

const query: any = {};

query.name = { $regex: filter.name, $options: "i" };

Model.find(query).exec();
2025( )
今日 20.83%
本周 42.86%
本月 10.00%
本年 67.40%
Powered by Snowinlu | Copyright © 2024- | MIT License