0

我正在处理一个现有代码,他们在其中使用 Mongo DB 和 Java EE。

在某些情况下,出于过滤目的,他们使用硬编码值作为 1 。

BasicDBObject query = new BasicDBObject(SEC_TYPE, "A");

BasicDBObject Fields = new BasicDBObject("date", 1);
returnFields.put("unisymbol", 1);
returnFields.put("symbol", 1);


DBCursor cursor = coll.find(query, Fields);

例如,如果您看到上面的查询,诸如 date 、 unisymbol 和 symbol 之类的字段被硬编码为 1 。

请让我知道,将值“1”反对者提交的确切含义是什么?

4

2 回答 2

1

这意味着,“仅检索该字段的值”。所以,这个查询:

db.users.find({}, {firstname: 1, lastname: 1})

只会得到两个字段,名字和姓氏。它不会得到电子邮件、地址和其他字段。

于 2013-03-06T11:01:24.600 回答
1

它用于投影:http ://docs.mongodb.org/manual/core/read-operations/#result-projections文档的字段被过滤掉。在这种情况下1,反对该字段意味着包括它,而0男性则省略它。

所以上面的代码包括dateunisymbol和。它包括必须通过以下方式从结果中显式删除的因为:symbol_id_id

returnFields.put("_id", 0);
于 2013-03-06T11:02:46.737 回答