如何从MongoDB的currentOp结果中仅输出指定字段?
如何在MongoDB的currentOp中仅返回指定字段?
你可以直接给db.currentOp()传入第二个参数作为投影规则,用来指定只返回你需要的字段,不需要额外用find方法。
具体命令如下:
db.currentOp( { "clientMetadata": { $exists: true } }, // 筛选条件 { "clientMetadata.driver": 1, "client": 1, "clientMetadata.application": 1, "_id": 0 // 排除默认返回的_id字段,如果你不需要的话 } )
说明:
- 第一个参数是你的筛选条件,和你之前写的一致,用来过滤出包含
clientMetadata的操作 - 第二个参数是投影文档:
- 字段值设为
1表示要保留该字段 - 字段值设为
0表示要排除该字段(这里排除_id是因为MongoDB默认会返回它,而你没要求这个字段) - 嵌套字段直接用点路径(比如
clientMetadata.driver)来指定即可
- 字段值设为
这样执行后,返回的结果就只会包含你指定的三个字段,不会有冗余内容了。
内容的提问来源于stack exchange,提问作者Kiwy
相关产品推荐
相关产品推荐

