gpt4 book ai didi

javascript - 将长查询字符串直接解析到 MongoDB(就像在 SQL 中一样)

转载 作者:行者123 更新时间:2023-11-30 11:38:22 26 4
gpt4 key购买 nike

在 PHP 或 C++ 或 Java 等中。我可以向 MySql 发送整个长的复杂查询

myQuery = 'SELECT * FROM BOOKINGS WHERE STATUS < 5 ORDER BY CHECKIN';
resultArray = mySql_query(myConnnect,myQuery);

现在我正在使用 MongoDB 处理 MEAN。有没有办法在这里做同样的事情?

var express = require('express');
var app = express();
app.get(myDatabase, function(req, res){

my-long-query = 'db.getCollection("receipt").aggregate([{$match:{bookingId:"94JCI"}},{$project:{"_id":0,"receiptNo":1,"amount":1}}])'
db.myDatabase.parse-my-long-query(function(err, docs) {
res.json(docs);
});

});

有些查询真的很长,我动态生成它们现在我将它们复制粘贴到 Robomongo 测试结果。

有什么想法吗?

最佳答案

您可以在 Node js 中使用 db.command 直接运行查询。

作为 db 命令的聚合查询采用以下形式。

https://docs.mongodb.com/manual/reference/command/aggregate/#aggregate-data-with-multi-stage-pipeline

调整您的 javascript 以将信息作为键值对发送。分别为 collectionnamequery 键入并将它们的值传递到下面的命令中。

db.command(聚合:collectionname,
管道:查询,
光标:{}
}

不同类型的查询有不同的语法。因此,您必须在 db.command 中相应地传递键值对。

更多内容

https://docs.mongodb.com/manual/reference/command/

关于javascript - 将长查询字符串直接解析到 MongoDB(就像在 SQL 中一样),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43571616/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com