Mongodb 带有双WHERE语句的Moongose查询

Mongodb 带有双WHERE语句的Moongose查询,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,我站在一个我在Moongose还是新手的情况下,我需要在MySQL中写一些类似的东西: SELECT * FROM table_name WHERE case_id = $case_id AND calculation_id = $calculation_id; 这就是我现在如何在: 添加一个新的。哪里真的没有交易,那么我该怎么办 示例行: {"_id":"55e993ad29149e61931b826c","calculation_id":22,"case_id":"2","position

我站在一个我在Moongose还是新手的情况下,我需要在MySQL中写一些类似的东西:

SELECT * FROM table_name WHERE case_id = $case_id AND calculation_id = $calculation_id;
这就是我现在如何在:

添加一个新的。哪里真的没有交易,那么我该怎么办

示例行:

{"_id":"55e993ad29149e61931b826c","calculation_id":22,"case_id":"2","position_id":"33660","blockline":"B510L1 ","repairmethod":"20 ","guidenumber":"N/A ","amount":"6","hours":"0","starmutation":"N","text":"BLATNÍK P L V-Z","originalpartnumber":"","originalpartprice":"0","manufacturercode":"","quality":"","suppliercode":"","id":4},
所以在这一行中,case_id=2和calculation_id 22

如果我打开URL
positions/2/22

app.get('/positions/:case_id/:calculation_id', function (req, res) {
    Positions.find()
        .where('case_id').equals(req.params.case_id)
        .where('calculation_id').equals(req.params.calculation_id)
        .exec(function (err, records) {
            res.send(records);
        });
})

我没有得到结果:(

在调用
exec
之前,您只需第二次调用
where
,并使用附加条件:

.where('calculation_id')
.equals(req.params.calculation_id)

在调用
exec
之前,您只需第二次调用
where
,并使用附加条件:

.where('calculation_id')
.equals(req.params.calculation_id)
您可以使用以下选项:

app.get('/positions/:case_id/:calculation_id', function (req, res) {
Positions.find({case_id: req.params.case_id, calculation_id: req.params.calculation_id})
    .exec(function (err, records) {
        res.send(records);
    });
})
您应该阅读。

您可以使用:

app.get('/positions/:case_id/:calculation_id', function (req, res) {
Positions.find({case_id: req.params.case_id, calculation_id: req.params.calculation_id})
    .exec(function (err, records) {
        res.send(records);
    });
})

您应该阅读。

我读了这个:但无论如何我都不明白我读了这个:但无论如何我都不明白hi@Mike,谢谢你的ranswer,但是它对我不起作用。更多详细信息在我上面的编辑中。您是否验证了req.params确实具有您期望的值?另外,我建议在res.send(records)上的调试器中设置一个断点在这一点上检查错误。你的代码中没有什么可以处理的。试着在蒙哥控制台中运行一个直接的DB查询。只是为了确保你的查询足够有效地得到他的结果。Hi @迈克,谢谢Frrror,但是它对我来说不起作用。更多的细节在我的编辑上面。你确认过了吗?ams实际上具有您期望的值?此外,我建议在res.send(records)上的调试器中设置一个断点;并在该点检查错误。您可能会遇到错误,而代码中没有任何内容可以处理该错误。请尝试在mongo控制台中运行直接db查询。以确保您的查询足够有效以获得结果。