나는 내가 지정한 기간 동안 도착 날짜가있는 모든 기간 (중첩 된) + 집을 제공하는 다음 쿼리를 사용합니다. 이제 특정 집에 도착하기 만하면되지만, Elasticsearch에서이를 수행하는 방법에 대한 구문을 이해할 수는 없습니다.특정 부모의 중첩 된 결과 찾기
GET /houses/house/_search
{
"_source" : ["HouseId"],
"query": {
"nested": {
"path": "Periods",
"query": {
"bool": {
"must": [
{"range": {
"Periods.ArrivalDate": {
"gte" : "2017-10-01",
"lt" : "2017-11-01"
}
}
}
]
}
},
"inner_hits" : {}
}
} }
매핑이이
{
"houses": {
"mappings": {
"house": {
"properties": {
"Periods": {
"type": "nested",
"properties": {
"ArrivalDate": {
"type": "date",
"format": "yyyy-MM-dd"
},
....
"HouseId": {
"type": "keyword"
},
그래서 내가 어떤 HouseId와 함께 집에 사용할 수있는 arrivaldates을 찾을 싶습니다 (나는 관련 부품 희망에 단축)입니다 특정 달 안에
당신은' "_source"과 같은 의미를 : { "include": "Period.ArrivalDate"}'? –
아니, 결과를 한 집의 기간으로 제한하는 것은 아닙니다. 내 생각에 내 'inner_hits' 'hack'을 해결할 수있는 힌트는 있지만 내 질문은 아닙니다. 아이디어는 한 집에 사용할 수있는 기간을 나열 할 수 있다는 것입니다. 이미 사용 가능한 쿼리는 사용 가능한 집을 검색하는 데 사용됩니다. – Maarten
'inner_hits'와'_source' 필터링은 두 가지 다른 것들입니다. "집"이란 무엇입니까? –