네, MongoDB 셸에서 JavaScript를 활용하면 컬렉션 이름을 변수에 담아 사용할 수 있습니다. 이는 반복적으로 동일한 컬렉션에 접근해야 할 때 코드를 더 간결하고 효율적으로 만들어 줍니다.
테스트용 컬렉션 생성
먼저 문서가 포함된 컬렉션을 하나 생성해 보겠습니다.
> db.employeeInformation.insertOne({"EmployeeName":"John Smith","EmployeeAge":24,"EmployeeSalary":450000});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cc6d06baf8e7a4ca6b2ad97")
}find() 메서드로 전체 문서 조회하기
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 조회하는 쿼리입니다.
> db.employeeInformation.find();
위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.
{ "_id" : ObjectId("5cc6d06baf8e7a4ca6b2ad97"), "EmployeeName" : "John Smith", "EmployeeAge" : 24, "EmployeeSalary" : 450000 }변수에 컬렉션 이름 할당하기
이제 MongoDB 셸에서 JavaScript의 var 키워드를 사용하여 변수에 컬렉션 이름을 할당하는 방법을 살펴보겠습니다.
사례 1: var로 변수 설정하기
컬렉션 참조를 변수에 저장한 뒤 해당 변수를 통해 쿼리를 실행할 수 있습니다.
> var status=db.employeeInformation; > status.find();
실행 결과는 다음과 같습니다.
{ "_id" : ObjectId("5cc6d06baf8e7a4ca6b2ad97"), "EmployeeName" : "John Smith", "EmployeeAge" : 24, "EmployeeSalary" : 450000 }사례 2: 다른 변수명으로 할당하고 pretty() 적용하기
또 다른 변수에도 동일하게 컬렉션을 할당할 수 있으며, pretty() 메서드를 함께 사용하면 결과를 보기 좋게 정렬된 형태로 확인할 수 있습니다.
> var employeeDetails=db.employeeInformation; > employeeDetails.find().pretty();
pretty() 메서드 덕분에 출력 결과가 들여쓰기와 함께 깔끔하게 표시됩니다.
{
"_id" : ObjectId("5cc6d06baf8e7a4ca6b2ad97"),
"EmployeeName" : "John Smith",
"EmployeeAge" : 24,
"EmployeeSalary" : 450000
}정리
MongoDB 셸은 JavaScript 기반으로 동작하기 때문에 var 키워드를 사용해 컬렉션 객체를 변수에 저장할 수 있습니다. 이렇게 하면 db.컬렉션이름을 매번 입력하지 않고도 변수만으로 find(), insertOne() 등 다양한 작업을 수행할 수 있어 생산성이 크게 향상됩니다.