You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB查询时如何仅返回指定的id、name两个特定字段?

你可以通过MongoDB查询的**投影(Projection)**配置来限定返回的字段,只需要给find()方法传入第二个参数,明确指定需要返回的字段即可,修改后的代码如下:

app.get('/', (req, res) => {
  db.collection('subs')
    .find(
      // 第一个参数为查询条件,保持原有逻辑不变
      { $text: { $search: 'test' } },
      // 第二个参数为投影配置:1表示返回该字段,未配置的字段默认不返回
      { _id: 1, name: 1 }
    )
    .toArray((err, result) => {
      if (err) {
        // 额外修正原代码的错误写法:err本身是错误实例,无需new实例化
        throw err;
      }
      res.json({
        length: result.length,
        body: { result },
      });
    });
});

补充说明:

  • 投影规则遵循「白名单优先」原则,只要配置了任意字段值为1,其余未配置的字段默认都不会返回
  • _id是MongoDB的默认返回字段,如果你不需要返回_id,可以手动配置_id: 0关闭该字段的返回

内容的提问来源于stack exchange,提问作者Fabdol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 18:54:06