【问题标题】:MongoDB: How to find key by valueMongoDB:如何按值查找键
【发布时间】:2013-08-18 18:30:28
【问题描述】:

我正在使用带有 express 框架和 Mongoose (MongoDB) 的 Node.js,我有一个关于如何有效检索数据的问题。

假设我在 mongo 文档中有这样的内容:

test : {a:1, b:2, c:2, d:1};

检索键的值(a、b、c 或 d)很容易,但如何进行逆运算,例如检索所有值为 2 的字母(在我的示例中为 'b' 和'c')

谢谢!

【问题讨论】:

  • 你能解释一下用例吗..
  • 如果你能解释一下用例就好了。
  • 如果您想查找具有某些值全部为“2”的文档,您可能希望喜欢进入聚合框架

标签: javascript node.js mongodb express mongoose


【解决方案1】:
var test = {a:1, b:2, c:2, d:1};

var search = function(obj, value) {
    for(var key in obj) {
        if(test[key] === value) {
            console.log(key);
        }
    }
};

search(test, 2);

//output b c 

小心,如果你修改了 Object.prototype,那么你可能会有不需要的原型键,你应该控制它。

【讨论】:

    猜你喜欢
    • 2021-11-20
    • 1970-01-01
    • 2012-09-26
    • 1970-01-01
    • 2016-06-01
    • 2012-12-12
    • 2018-05-24
    • 1970-01-01
    相关资源
    最近更新 更多