タグ付けされた質問 「projection」

14
MongoDBコレクションのオブジェクト配列内の照会された要素のみを取得します
私のコレクションに次のドキュメントがあるとします。 { "_id":ObjectId("562e7c594c12942f08fe4192"), "shapes":[ { "shape":"square", "color":"blue" }, { "shape":"circle", "color":"red" } ] }, { "_id":ObjectId("562e7c594c12942f08fe4193"), "shapes":[ { "shape":"square", "color":"black" }, { "shape":"circle", "color":"green" } ] } クエリを実行します。 db.test.find({"shapes.color": "red"}, {"shapes.color": 1}) または db.test.find({shapes: {"$elemMatch": {color: "red"}}}, {"shapes.color": 1}) 一致したドキュメント(ドキュメント1)を返しますが、常にすべての配列項目が含まれshapesます。 { "shapes": [ {"shape": "square", "color": "blue"}, {"shape": "circle", "color": …

19
MongoDBコレクションのすべてのドキュメントに対して単一のフィールドを選択するにはどうすればよいですか?
私のMongoDBには、フィールドnameとを含む10レコードの学生コレクションがありrollます。このコレクションの1つのレコードは次のとおりです。 { "_id" : ObjectId("53d9feff55d6b4dd1171dd9e"), "name" : "Swati", "roll" : "80", } roll従来のデータベースと同じように、コレクション内の10レコードすべてのフィールドのみを取得するには、次のようにします。 SELECT roll FROM student 私は多くのブログを調査しましたが、すべてに、WHERE句が含まれている必要があるクエリが作成されています。次に例を示します。 db.students.find({ "roll": { $gt: 70 }) クエリは次と同等です。 SELECT * FROM student WHERE roll > 70 私の要件は、条件なしで単一のキーのみを見つけることです。それで、そのためのクエリ操作は何ですか?

3
プロジェクションの前後に異なるモデルでフィルタリングを使用するJava
hibernateの次のJAVAモデルを考えてみます。 @Entity @Table public class Person { @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long id; @Column public String firstName; @Column public String lastName; @Column public Boolean active; } APIシリアル化の次のモデル(Spring Boot Rest Controller を使用): public class PersonVO { public Long id; public String fullName; } 私が欲しいのは: 個人にフィルタリングを適用する(静的に定義) PersonVOでフィルタリングを適用する(@RequestParamから取得) ではC#.NET、私は次のように作ることができます: IQueryable<Person> personsQuery = …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.