아래는 내 MongoDB의 컬렉션에서 문서의 예입니다 결합 :MongoDB의 쿼리
{
"countries": ["IN", "US", "UK"],
"regions": ["North", "South", "East", "West"],
"types": ["A", "C"],
"doc": {
"prop" : "value"
}
}
입력 매개 변수 및 세션 정보를 바탕으로, 내가 국가, 지역 및 유형을 조회 할 수 있습니다. 이 원하는 국가 및 지역에 따라 쿼리에 대한 내 자바 스크립트 코드 :
if(inputCountry && !inputRegion) {
db.collection.find({countries: inputCountry}, callback);
} else if(!inputCountry && inputRegion) {
db.collection.find({regions: inputRegion}, callback);
} else if(inputCountry && inputRegion)
db.collection.find({countries: inputCountry, regions: inputRegion}, callback);
} else {
db.collection.find({}, callback);
}
당신은 이미 국가와 지역 4 경우 - 다른 조건을 가지고있어시피. 또한 유형별로 쿼리 할 때 다양한 조합으로 인해 더 복잡해지고 오류가 발생하기 쉽습니다.
이렇게하는 것을 피하는 방법이 있습니까? 그리고 mongo 쿼리를 결합 할 수 있습니까?
이러한 입력 매개 변수의 출처는 어디입니까? 그것들이'req.query' 또는'req.params' 객체에 있다면, 조건문을 사용하지 않고 쿼리를 구조화 할 수있는 방법이 있습니다. – chridam
두 개는 req.query의 것이고 다른 한 개는 req.session의 것입니다. 조건없이이 작업을 수행하는 방법은 무엇입니까? –