본문 바로가기

WEB/Node.JS

[express] mongodb 데이터 검색(find, findOne)

컬렉션의 데이터를 전체 조회할때

mongodb.collection.find() // collection 데이터 전체조회

 

컬렉션의 특정 데이터가 포함된 데이터를 조회할때

// name이 Kwon Hyeok Jin이고 gender가 male인 데이터만 조회
mongodb.collection.find({ name : Kwon Hyeok Jin, gender : male })

내부 오브젝트는 조건이다. SQL의 Where가 비슷한 기능을 한다. Where name = 'Kwon Hyeock Jin' and gender = 'male'인 셈이다.

 

쿼리 연산자를 사용하여 조회하는 것도 가능하다.

// age의 값이 10이상 30 이하인 값을 조회
mongodb.collection.find( { “age”: { $gt: 10, $lt: 30 } } )

operator설명

$eq (equals) 주어진 값과 일치하는 값
$gt (greater than) 주어진 값보다 큰 값
$gte (greather than or equals) 주어진 값보다 크거나 같은 값
$lt (less than) 주어진 값보다 작은 값
$lte (less than or equals) 주어진 값보다 작거나 같은 값
$ne (not equal) 주어진 값과 일치하지 않는 값
$in 주어진 배열 안에 속하는 값
$nin 주어빈 배열 안에 속하지 않는 값

 

findOne은 find 메서드에서 조회할때 가장 첫번째 배열 데이터 한개만 조회하고 싶을때 사용하면 된다.