Chagua nested masharti kadhaa yakihitaji kutumika kwa element ileile katika array. Vinginevyo thamani kutoka element tofauti zinaweza kutimiza query pamoja kimakosa.
Bidhaa yenye aina mbili
Hakuna aina nyekundu ya saizi L. Lakini object mapping ya kawaida husawazisha field hizi kuwa rangi nyingi na saizi nyingi, ikipoteza uhusiano wa saizi na rangi. Kwa hiyo query ya nyekundu na L inaweza kulinganisha bidhaa kimakosa.
Map variants kama nested na color/size kama keyword. Kisha tumia:
{
"query": {
"nested": {
"path": "variants",
"query": {
"bool": {
"filter": [
{"term":{"variants.color":"red"}},
{"term":{"variants.size":"L"}}
]
}
}
}
}
}
Filter zote sasa huendesha ndani ya element moja nested, kwa hiyo bidhaa ya mfano hailingani. Badilisha L kuwa S, nayo inaweza kulingana na aina nyekundu.
Element nested huunda document za ziada za ndani na query ghali zaidi. Object ya kawaida ni rahisi kama huhitaji kuhifadhi uhusiano ndani ya array. Pima michanganyiko halali na inayovuka element kabla ya kuamua mapping inafanya kazi.
Maktaba ya maswali ya mahojiano ya IT yenye majibu ya kina — kutoka Junior hadi Senior.
Changia