Computer >> 컴퓨터 >  >> 프로그래밍 >> MongoDB

MongoDB 쿼리에서 변수(var)를 활용하는 방법

MongoDB 쿼리에서 변수 사용하기

MongoDB 쿼리에서 변수를 활용하면 반복적으로 사용하는 조건 값을 재사용할 수 있어 코드의 가독성과 유지보수성이 크게 향상됩니다. MongoDB 셸에서는 var 키워드를 사용해 손쉽게 변수를 선언할 수 있습니다. 아래에서 실제 예제를 통해 단계별로 살펴보겠습니다.

1. 샘플 데이터 생성

먼저 문서(document)를 삽입하여 데모용 컬렉션을 생성합니다.

> db.demo107.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e2ee1b19fd5fd66da214471")
}
> db.demo107.insertOne({"Name":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e2ee1b49fd5fd66da214472")
}
> db.demo107.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e2ee1b89fd5fd66da214473")
}

insertOne() 메서드를 세 번 호출하여 "Chris", "Bob", "David"라는 이름을 가진 문서를 demo107 컬렉션에 각각 추가했습니다.

2. 컬렉션의 전체 문서 조회

find() 메서드를 사용하면 컬렉션에 저장된 모든 문서를 한눈에 확인할 수 있습니다.

> db.demo107.find();

위 명령을 실행하면 다음과 같은 결과가 출력됩니다.

{ "_id" : ObjectId("5e2ee1b19fd5fd66da214471"), "Name" : "Chris" }
{ "_id" : ObjectId("5e2ee1b49fd5fd66da214472"), "Name" : "Bob" }
{ "_id" : ObjectId("5e2ee1b89fd5fd66da214473"), "Name" : "David" }

3. 변수를 활용한 쿼리 실행

이제 var 키워드로 변수를 선언하고, 이를 find() 쿼리의 조건 값으로 사용해 보겠습니다.

> var firstName="Bob";
> db.demo107.find({"Name":firstName});

실행 결과는 다음과 같습니다.

{ "_id" : ObjectId("5e2ee1b49fd5fd66da214472"), "Name" : "Bob" }

정리

위 예시에서 볼 수 있듯이, firstName 변수에 저장된 값 "Bob"이 쿼리 조건으로 그대로 적용되어 해당 이름을 가진 문서만 정확히 조회되었습니다. 이러한 방식은 동일한 값을 여러 쿼리에서 재사용하거나, 스크립트를 작성할 때 조건을 유연하게 변경해야 하는 경우에 특히 유용합니다. 하드코딩 대신 변수를 활용하면 오타로 인한 오류도 줄일 수 있어 더욱 안전한 쿼리 작성이 가능합니다.