我的每個檔案都包含一個陣列,例如
"idList": [
'DCCA7703Orange shirt',
'EFBA6705Blue bag',
'O7BA6405Blue socks'
]
我想撰寫一個查詢以僅獲取“idList”陣列的一個或多個元素滿足兩個條件的檔案:該值以一個引數開頭并包含第二個值引數,都在同一個元素上。例如,將邏輯應用于上面的示例檔案,如果引數是“EFBA6705”和“bag”,那么它會很成功,但如果引數是“EFBA6705”和“socks”則不會,因為它們確實在陣列中,但是關于兩個不同的元素。此陣列是“文本”型別的屬性,我無法控制檔案的映射,因此無法將其轉換為“嵌套”型別或任何其他型別。
"idList": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
我的彈性搜索版本是 5.6.11。
提前致謝。
uj5u.com熱心網友回復:
不改變映射通配符查詢可以在這種情況下作業
{
"query": {
"wildcard": {
"idList.keyword": {
"value": "EFBA6705* bag"
}
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/513915.html
標籤:弹性搜索
