配列の中で最高のフィールドを取るために、型= best_fieldsでmulti_matchを使うことを試みますが、配列内の項目の合計スコアが得られます。どのように配列アイテムの最大得点だけを取得し、他の項目のスコアを無視するリクエストを作成するには?配列から最高のスコアしか取る方法は?
ドキュメント:
1: { "field": ["a b c", "b c"] }
2: { "field": ["e f g", "b c"] }
問合せ:
{
"query": {
"multi_match": {
"query": "c",
"fields": [
"field"
],
"type": "best_fields"
}
}
}
結果:
1: {"score": 0.39, "highlight": ["a b <em>c</em>", "b <em>c</em>"] }
2: {"score": 0.28, "highlight": ["b <em>c</em>"]}
マッピング:
{
"mappings": {
"bft": {
"_all": {
"enabled": false
},
"properties": {
"field": {
"type": "text"
}
}
}
}