gpt4 book ai didi

java - 如何将查询存储在 MongoDB 集合中以便动态执行它们?

转载 作者:行者123 更新时间:2023-12-01 04:12:23 24 4
gpt4 key购买 nike

我是 MongoDB 的新人。我的界面中有一个“报告”下拉列表,根据所选的报告执行查询。

另一方面,我有一个“报告”集合,例如如下所示:

{
_id : 1,
reportName : "Count users",
queryScript : "db.users.count()"
}, {
_id : 2,
reportName : "Find user names",
queryScript : "db.users.find( {}, { name : true } )"
}, etc

我们必须做一些类似于此伪代码的事情:

Report report = db.reports.find({ id : 1 });
String result = mongoClient.execute ( report.getQueryScript );

这可能吗?你能帮忙解决这个问题吗?

最佳答案

您可以使用server side javascript :

db.system.js.save({
_id : "countUsers" ,
value : function (){ return db.test.count(); }
});

等等。但请保留 _id 作为函数的普通名称,因为稍后您将通过 _id 调用它。然后你就可以了

db.loadServerScripts();

之后您可以执行查询:

countUsers();

关于java - 如何将查询存储在 MongoDB 集合中以便动态执行它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19797525/

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