0

Java EE で Mongo DB を使用している既存のコードに取り組んでいます。

場合によっては、フィルタリングの目的で、ハードコードされた値を 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})

は、名と姓の 2 つのフィールドのみを取得します。電子メール、住所、その他のフィールドは取得されません。

于 2013-03-06T11:01:24.600 に答える
1

これは射影に使用されます: http://docs.mongodb.org/manual/core/read-operations/#result-projectionsこれにより、ドキュメントのフィールドが除外されます。この場合1、そのフィールドに対しては、それを含めることを意味し、それ0を省略することを意味します。

したがって、上記のコードにはdateunisymbolsymbolおよびが含まれ_idます。これには、_id次の方法で結果から明示的に削除する必要がある since が含まれます。

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