ETC/Database

[MongoDB] 하위 다큐먼트 검색

쪽제비 2022. 4. 11. 19:30

MongoDB를 사용해본지 얼마 되지 않아서 용어가 틀릴 수도 있다.

 

일단 하고자 하는 것은 필드의 값이 다큐먼트인 경우 하위 다큐먼트의 값을 필터링해서 검색하는 것이다.

 

 

테스트 데이터

[{'_id': ObjectId('625400ebf1a8f0ddaa5de4c0'),
  'name': 'test1',
  'data': {'age': 10, 'height': 120}}]

> db.test_collection.find({name:'test1'})
{ "_id" : ObjectId("625400ebf1a8f0ddaa5de4c0"), "name" : "test1", "data" : { "age" : 10, "height" : 120 } }

 

 

age로 필터를 걸 경우

- mongoshell 을 사용할 경우 쌍따옴표로 묶어주어야 검색이 된다.

 

> db.test_collection.find({ "data.age" : 10 })
{ "_id" : ObjectId("625400ebf1a8f0ddaa5de4c0"), "name" : "test1", "data" : { "age" : 10, "height" : 120 } }

 

 

db.getCollection("test_collection").find({ "data.age" : { $gt : 4} })

 

 

'ETC > Database' 카테고리의 다른 글

[MS-SQL] CREATE TABLE IF NOT EXISTS  (0) 2016.10.07