비교 쿼리 연산자
특정 조건에 해당하는 도큐먼트를 조회하고 싶을 경우에는 조건을 JSON 형태로 입력
RDB처럼 다양한 비교 연산자를 활용하여 조회할 수도 있습니다.
연산자 대체 문자열을 이용하여 비교문을 작성
기호 대체 문자열 의미
= | $eq | 같은 (equal) |
!= | $ne | 같지 않은 (not equal) |
< | $lt | 미만 (less than) |
<= | $lte | 이하 (less than equal) |
> | $gt | 초과 (greater than) |
>= | gte | 이상 (greater than equal) |
$gt연산자
해당 값보다 더 큰 값을 가진 필드를 찾는 연산자, 날짜와 ObjectId도 비교 가능
#문법 {필드 명: {$gt: value} }
#예시) 주소가 문자 "S" 이후로 시작하는 도큐먼트 조회
query = { "address": { "$gt": "S" } }
mydoc = mycol.find(query)
$gte연산자
해당 값보다 크거나 같은 값을 가진 필드를 찾는 연산자
#문법 {필드 명: {$gte: value} }
#예시) 키가 160이상인 사람을 조회
query = { "height": { "$gte": 160 } }
mydoc = mycol.find(query)
$in연산자
필드의 값이 $in안에 들어있는 값들 중 하나인 필드를 찾는 연산자
value1, value2, value3 중 하나면 반환하는 것
#문법 { 필드 명: { $in: [<value1>, <value2>, <value3>, ... <valueN> ] } }
#예시) address가 Seoul 342, Incheon 125, Busan 876 중 하나인 값을 조회
query = { "address": { "$in": ["Seoul 342", "Incheon 125", "Busan 876"] } }
mydoc = mycol.find(query)
$lt연산자
해당 값보다 작은 값을 가진 필드를 찾는 연산자입니다.
#문법 {필드 명: {$lt: value} }#예시) 20살 미만인 사람을 조회 query = { "age": { "$lt": 20 } } mydoc = mycol.find(query)
$lte연산자
해당 값보다 작거나 같은 값을 가진 필드를 찾는 연산자입니다.
#문법 { 필드 명: { $lte: value} }#예시) 19살 이하인 사람을 조회 query = { "age": { "$lte": 19 } } mydoc = mycol.find(query)
$ne연산자
해당 값과 일치하지 않는 값을 가진 필드를 찾는 연산자입니다.
#문법 {필드 명: {$ne: value} }#예시) 키가 160이 아닌 사람 조회 query = { "height": { "$ne": 160 } } mydoc = mycol.find(query)
$nin연산자
$nin 안에 값들이 아닌 필드 (not in)
#문법 { 필드 명: { $nin: [ <value1>, <value2>, <value3> ... <valueN> ]} }
#예시) 아래 주소가 아닌 필드 조회
query = { "address": { "$nin": ["Seoul 342", "Incheon 125", "Busan 876"] } }
mydoc = mycol.find(query)
'DB > MongoDB' 카테고리의 다른 글
데이터 베이스(No SQL) - MongoDB Update 메소드 활용 (0) | 2021.01.23 |
---|---|
데이터 베이스(No SQL) - MongoDB 논리 연산자 (0) | 2021.01.23 |
데이터 베이스(No SQL) - MongoDB 데이터 삽입 (Insert) (0) | 2021.01.22 |
데이터 베이스(No SQL) - MongoDB Create (CRUD) (0) | 2021.01.22 |
데이터 베이스(NoSQL) - Mongo DB (0) | 2021.01.22 |
댓글