728x90
mongoDB는 NoSql DB로, Join문을 사용할 수 없다.
하지만 $lookup을 사용하여 MongoDB에서 여러 개의 컬렉션 간 조인을 수행할 수 있다.
$lookup은 RDBMS의 조인 기능과 유사한 기능을 제공하는 파이프라인 연산자이다.
코드 작성 예시
import pymongo
my_client = pymongo.MongoClient('mongodb://localhost:27017/')
my_db = my_client['Orders']
my_collection = my_db['buy_orders']
result = my_collection.aggregate([{
'$lookup' : {
'from': 'sell_orders',
'localField': 'id_transaction',
'foreignField': 'id_transaction',
'as': 'results' }
}])
from: 조인할 컬렉션명
localField: 현재 켈력션에서 비교할 key값
foreignField: 조인할 컬렉션에서 비교해야하는 key 값
as: 결과를 저장할 필드의 이름. 조인된 문서는 이 필드에 배열 형태로 저장된다.
위 같은 경우 results[0].~~ 로 결과를 저장한다.
'DB' 카테고리의 다른 글
Java - DB 연결2: ORM (0) | 2023.06.26 |
---|---|
Java - DB 연결1: JDBC (0) | 2023.06.26 |