MongoDB 표현연산자 (Expressive Query Operator)

YoungJoon Suh·2022년 4월 13일
0

expr를 사용하여 쿼리 내에서 집계 표현식(aggregation Expression)을 사용할 수 있습니다. { $expr : {<expression>}}expr를 이용해 변수와 조건문을 사용할 수 있습니다.
$expr를 사용하여 같은 도큐먼트 내의 필드들을 서로 비교할 수 있습니다.

$expr를 사용하면 해당 값이 어떤 필드와 같아야 하는지 지정하지 않고도 자체적으로 동일한 도큐먼트 내에서 start station id값과 end station id값을 직접 비교할 수 있습니다.
이렇게 $expr를 사용하여 같은 곳에서 대여하고 반납한 모든 결과에 대해 가져올 수 있습니다.

는연산자를나타낼뿐만아니라필드의값을참조할때도사용됩니다.는 연산자를 나타낼 뿐만 아니라 필드의 값을 참조할 때도 사용됩니다. start station id: 439
start station name: E 4th Street & 2nd Avenue를 사용하여 각각의 도큐먼트마다 달라지는 특정 필드의 값을 변수처럼 비교할 수 있습니다.

{"expr":{ "and":[
{"gt":["gt":["tripduration", 1200 ]},
{"eq":["eq":["end station id", "$start station id" ]}
]
}
}

MQL syntax:
{: {:}}
e.g. {total_employee:{"$gt" : 25}}
Aggregation syntax:
{:{ ,}}

MQL에서 비교 연산자 구문은 먼저 필드를 작성하고 나중에 적용되는 비교 연산자를 작성합니다.
그러나 이 구문은 집계 표현식을 사용합니다. 집계 구문에서는 연산자를 먼저 작성하고 다음으로 필드와 값을 작성합니다.
표현 연산자로 더 복잡한 쿼리를 작성할 수 있으며 도큐먼트 내의 필드를 비교할 수 있습니다.
또한 $는 필드의 값을 참조할 때에도 사용할 수 있습니다.

profile
저는 서영준 입니다.

0개의 댓글