게시글

5만명이 선택한 평균 별점 4.9의 제로초 프로그래밍 강좌! 로드맵만 따라오면 됩니다! 클릭
강좌6 - MongoDB - 8년 전 등록

비교,논리 쿼리 연산자

안녕하세요. 이번 시간부터는 쿼리 연산자에 대해서 알아보겠습니다. 쿼리 연산자는 다큐먼트를 조회할 때 구체적으로 찾기 위해 조건을 입력하는 것을 도와주는 기호입니다. 몇 개는 지난 시간에 미리 보셨을 겁니다. 쿼리 연산자는 모두 $로 시작합니다. 오늘은 비교 쿼리 연산자에 대해 알아보겠습니다.

비교 쿼리

$gt

해당 값보다 더 큰 값을 가진 필드를 찾습니다. 숫자 뿐만 아니라 날짜와 ObjectId도 비교할 수 있습니다.

{ 필드: { $gt: 값 } }

$lt

해당 값보다 작은 값을 가진 필드를 찾습니다

{ 필드: { $lt: 값 } }

$gte

해당 값보다 크거나 같은 값을 가진 필드를 찾습니다

{ 필드: { $gte: 값 } }

$lte

해당 값보다 작거나 같은 값을 가진 필드를 찾습니다

{ 필드: { $lte: 값 } }

$eq

해당 값과 일치하는 값을 가진 필드를 찾습니다. 사실 그냥 { 필드: 값 } 하는 것과 같습니다.

{ 필드: { $eq: 값 } }

$ne

해당 값과 일치하지 않는 값을 가진 필드를 찾습니다.

{ 필드: { $ne: 값 } }

$in

필드의 값이 $in 안에 들어있는 값들 중 하나인 필드를 찾습니다. 아래의 예를 보면 값1, 값2, 값3, ...이 있는데 필드의 값이 그 중 하나면 반환하는 겁니다.

{ 필드: { $in: [ 값1, 값2, 값3, ... ] }

$nin

필드의 값이 $nin 안에 값들이 아닌 필드를 찾습니다. 아래의 예를 보면 값1, 값2, 값3, ...이 있는데 필드의 값이 그 값들이 아니어야 합니다.

{ 필드: { $nin: [ 값1, 값2, 값3, ... ] }

논리 쿼리

$or

$or은 여러 개의 조건 중에 적어도 하나를 만족하는 다큐먼트를 찾습니다.

{ $or: [{ 조건1 }, { 조건2 }, ...] }

$and

$and는 여러 개의 조건을 모두 만족하는 다큐먼트를 찾습니다. 조건이 간단하면 그냥 { 필드: 값, 필드: 값 } 이렇게 $and가 없어도 되지만, 주로 다음과 같은 경우 때문에 $and가 필요합니다.

{ $and: [
  { $or: [{ 조건1 }, { 조건2 }] },
  { $or: [{ 조건3 }, { 조건4 }] }
] }

$nor

$nor은 여러 개의 조건을 모두 만족하지 않는 다큐먼트를 찾습니다. 조건1, 조건2 등등을 모두 만족하지 않아야합니다.

{ $nor: [{ 조건1 }, { 조건2 }, ...] }

$not

$not은 뒤의 조건을 만족하지 않는 필드를 찾습니다. $nor의 단일 버전이라고 보시면 됩니다.

{ $not: { 조건 } }

다음 시간에는 요소 쿼리 연산자평가 쿼리 연산자에 대해 알아보겠습니다!

조회수:
0
목록
투표로 게시글에 관해 피드백을 해주시면 게시글 수정 시 반영됩니다. 오류가 있다면 어떤 부분에 오류가 있는지도 알려주세요! 잘못된 정보가 퍼져나가지 않도록 도와주세요.
Copyright 2016- . 무단 전재 및 재배포 금지. 출처 표기 시 인용 가능.
5만명이 선택한 평균 별점 4.9의 제로초 프로그래밍 강좌! 로드맵만 따라오면 됩니다! 클릭

댓글

아직 댓글이 없습니다.