MongoDB - 如何根据两列值获取文档

MongoDB - How to get the documents based on two column values

我的 MongoDB 样本数据集合附在下面的屏幕截图中

我想通过传递成绩值来获取行,结果记录应该返回如下

总结上述情况,给定的成绩应大于或等于 gradeFrom 且小于或等于 gradeTo。

下面给出了我使用的猫鼬查询,但是在我的代码中返回的数据是空的

let andCondition = []; 
let grade = 12;
andCondition.push({ gradeFrom: {$gte: grade}});
andCondition.push({ gradeTo: {$lte: grade}});
let data = await Course.find({$and :andCondition});

console.log(andCondition) gives the below object

[ 
    { gradeFrom: { '$gte': 12 } }, 
    { gradeTo: { '$lte': 12 } } 
]

请帮我完成这件事。

你颠倒了范围逻辑。

数学上应该是:

gradeFrom <= grade <= gradeTo

在 MongoDB 查询中:

{ gradeFrom: { $lte: grade } }
{ gradeTo: { $gte: grade } }