최근에 mongodb에서 작업하기 시작했습니다. 내 간단한 응용 프로그램은 지리적 계층 구조를해야합니다mongodb에서 문서의 모든 부모와 자식을 얻는 방법
Continet 같은 -> 국가 -> 지역 ---> 리조트 -> 숙박 시설
위와 같이 내 데이터는이
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a44"),
"name" : "Europe",
"parent" : "",
"type" : "Continent",
"synonym" : "",
"code" : "EEE"
}
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a47"),
"name" : "Bulgaria",
"parent" : "EEE",
"type" : "Country",
"synonym" : "",
"code" : "BGR"
}
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a45"),
"name" : "Albania",
"parent" : "EEE",
"type" : "Country",
"synonym" : "",
"code" : "ALB"
}
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a48"),
"name" : "Bourgas Region",
"parent" : "BGR",
"type" : "Region",
"synonym" : "",
"code" : "002682"
}
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a49"),
"name" : "Obzor",
"parent" : "002682",
"type" : "Resort",
"synonym" : "",
"code" : "002911"
}
{
"_id" : ObjectId("54854d5af2ef42fe7d4d2a4a"),
"name" : "Sunny Beach",
"parent" : "002682",
"type" : "Resort",
"synonym" : "",
"code" : "002548"
}
{
"_id" : ObjectId("54854d5af2ef42fa7d4d2b3d"),
"name" : "Hotel Park Avenue",
"parent" : "002548",
"type" : "Accommodation",
"synonym" : "",
"code" : "022548"
}
처럼 될 것입니다 모든 문서에서 사용할 수있는 직접적인 부모 만있을 것입니다.
지금은 "코드"로 문서에 모든 부모와 자녀를 얻을 수있다 : "002548"나는 리조트 코드가있는 경우
, 내가 얻을 수있는 모든 부모로서 각각의 리조트를 가지고있는 숙박 시설 리조트가 속한 목적지, 컨트리, 대륙을 얻어야합니다.
나는 이것을 얻기 위해 재귀 쿼리가 있어야한다고 느낀다. DB 조작을 위해 MongoTemplate을 사용하고있다.
제발 최선의 해결책을 얻으려면 도와주세요.
미리 감사드립니다.
이 질문에 대한 대답은 제공되지 않습니다. 비평하거나 저자의 설명을 요청하려면 게시물 아래에 의견을 남겨 둡니다. –
그가 찾고있는 것은 mongo가 지원하지 않는 조인입니다. 복수의 쿼리를 사용해야합니다. 그것은 * 답입니다. – evanchooly
@evanchooly 여러 개의 쿼리를 사용해야 함을 이해합니다. 논리적으로 여러 쿼리를 사용하는 가장 좋은 방법을 제안 해주십시오. –