簡體   English   中英

基於過濾結果的彈性搜索過濾

[英]elastic search filtering based on filtering results

是否可以根據另一個過濾器的結果過濾文檔?

例如,如果我過濾文檔

"_source": [ "animalName" ],
{ "term":  { "animalType": "dog" }}

如何過濾選擇所有具有狗名的動物?

假設您想要所有類型為dog的動物,其名稱為$ someName ,請嘗試以下操作:

{
  "_source: ["animalName", "animalWeight", ...],
  "query": {
    "bool": {
      "filter": [{
        "term": {"animalType": "dog"}
      },{
        "term": {"animalName": $someName}
      }]
    }
  }
}

[Udate]
你的意思是這樣的嗎?

select distinct a2.*
from animals a1
  join animals a2 on a1.name = a2.name
where 1
  and a1.type = 'dog'
  and a2.type != 'dog'

我不知道如何以彈性方式實現這一目標,因為“ SQL風格的連接”“非常昂貴” [1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM