我只是mongo DB的首发。在浏览mongoDB文档时,我发现了一些声明,声明如下:
var store_test2 = db.test2.find();
var store_test2_1= store_test2.hasNext() ? store_test2.next(): null;
print(store_test2_1.friends);
我从上面的代码中提出的问题很少。
什么是?在上面的代码中,为什么我的代码不会在没有指定的情况下运行?
store_test2存储从集合test2返回的文档。 Test2集合有很多文档。收藏品内的文件有 一个叫做朋友的键或属性。我想打印所有朋友的价值观 文件。
我可以通过使用函数来达到要求。 但是如何通过使用上面给出的类似代码来实现相同的目标?
例如,我有5个文件,每个文件都有属性朋友为34,344,54,32,444。 我的输出应该看起来像34
344
54
32
444
上面的代码只给出了一个文件属性“朋友”的输出,即34。
有人可以告诉我一些链接,我可以在其中找到
的信息mongoDB后台作业。
如何进行读写操作。
群集行为。
主节点和辅助节点行为。
mongoDB的整体架构。
答案 0 :(得分:0)
?
和:
是conditional operator。它是if ... else在作业中的简写。该行的长形式将是:
var store_test2_1;
if (store_test2.hasNext()) {
store_test2_1 = store_test2.next();
} else {
store_test2_1 = null;
}
MongoDB游标的工作方式类似于迭代器。只要.hasNext()返回true,就可以使用方法.next()来检索更多文档。您可以使用while循环执行此操作:
while(cursor.hasNext()) {
var document = cursor.next();
print(document.friends);
}
Stackoverflow正在努力成为知识库,而不是链接集合,所以请不要索取链接。提出具体问题,我们会尽力回答。
话虽如此,所有这些主题都在the MongoDB manual中描述。如果您有具体问题,请随时将其作为新问题提出。