私は、リレーショナルの世界から来た MongoDB を初めて使用します。どんな助けでも大歓迎です。次の属性を持つ患者のリストがあります。
{"id": 101,
"demographics": {"sex": "male","dob": "1/1/1984"},
"hospital_visits": [
{ "date": "1/1/2012",
"diagnosis": ["diabetes","fractured hip"]
},
{ "date": "3/1/2012",
"treatment": ["hip replacement"],
"outcome": "normal discharge"
},
{ "date": "5/1/2012",
"diagnosis": ["hip infection"],
"outcome": "inpatient admission"
}
]
},
{"id": 102,
"hospital_visits": [
{ "date": "1/1/2013",
"diagnosis": ["fractured hip"]
},
{ "date": "3/1/2013",
"treatment": ["hip replacement"],
"outcome": "normal discharge"
}
]
}
ここで、ある時点 (病院訪問の 1 つ) で「股関節骨折」と診断され、その後に「股関節置換術」治療を受けた患者の数を知りたい場合 (同じ病院の訪問)、「股関節置換術」治療の日から 3 か月以内に結果として「入院」があった場合、MongoDB クエリをどのように構成すればよいですか? このロジックを使用すると、指定されたサンプル データでは、明らかに患者 101 がヒットし、患者 102 はヒットしていないため、カウントは 1 になります。しかし、MongoDB でこのクエリを作成するにはどうすればよいでしょうか? 何か案は?この質問に対処するために文書構造を変更すると、より簡単になりますか?
どうもありがとう!