首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Mongoose和MongoDB中搜索键值对

如何在Mongoose和MongoDB中搜索键值对
EN

Stack Overflow用户
提问于 2021-05-15 06:13:55
回答 1查看 23关注 0票数 1

我正在创建一个MERN应用程序,允许用户在数据库中输入他们的编码知识水平。

Schema中有一个名为skills的值,它允许这样做:

代码语言:javascript
复制
skills: [{
    skill: String,
    yearsExperience: String
}]

这意味着用户的技能在MongoDB数据库中将如下所示:

代码语言:javascript
复制
skills: [
    {skill: 'React', yearsExperience: '3 years'},
    {skill: 'HTML', yearsExperience: '5 years'},
    {skill: 'JavaScript', yearsExperience: '5 years'},
    {skill: 'Git', yearsExperience: '3 years'},
    {skill: 'TypeScript', yearsExperience: '< 1 year'},
    {skill: 'C++', yearsExperience: '1 years'}
]

我正在创建一个管理面板,我希望能够查询每个用户的技能,以找到合适的匹配。因此,如果我想找一个有至少两年的React经验和至少一年的C++经验的人,这个查询将返回一个JSON对象,其中包含符合这个要求的所有用户。这个问题是我从来没有处理过这些保存到数据库中的动态对象,所以我不确定Mongoose是否有一个内置的方法来处理这个问题。任何建议都是很棒的!

EN

回答 1

Stack Overflow用户

发布于 2021-05-15 08:00:05

因为多年的经验是您想要排序和过滤的指标,所以您真的不想将其存储为字符串。如果它在您的控制之下,那么您应该将其存储为一个数字,这样您就可以使用像$gt这样的运算符执行一个非常简单的find

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67541506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档