0

次のドキュメント構造のインデックスがあります: Company > Jobs (ネスト)

会社には名前があり、仕事には住所があります。デフォルトでは、住所で求人を検索します。これに伴い、function_scoreクエリを使用して特定の企業を名前でブーストしようとしています。しかし、私のクエリは何かを後押ししたり、スコアを変更したりしていないようです。

{
  "query": {
    "filtered": {
      "filter": {},
      "query": {
        "function_score": {
          "query": {
            "nested": {
              "path": "active_jobs",
              "score_mode": "max",
              "query": {
                "multi_match": {
                  "query": "United States",
                  "type": "cross_fields",
                  "fields": [
                    "active_jobs.address.city",
                    "active_jobs.address.country",
                    "active_jobs.address.state"
                  ]
                }
              },
              "inner_hits": {
                "size": 1000
              }
            }
          },
          "functions": [
            {
              "filter": {
                "term": {
                  "name": "Amazon"
                }
              },
              "weight": 100
            }
          ]
        }
      }
    }
  },
  "size": 30,
  "from": 0
}

active_jobs[更新 1]プロパティのマッピングは次のとおりです。

    "active_jobs": {
  "type": "nested",
  "properties": {
    "active": {
      "type": "boolean"
    },
    "address": {
      "properties": {
        "city": {
          "type": "string"
        },
        "country": {
          "type": "string"
        },
        "state": {
          "type": "string"
        },
        "state_code": {
          "type": "string"
        }
      }
    },
    "id": {
      "type": "long"
    },
    "title": {
      "type": "string"
    },
    "updated_at": {
      "type": "date",
      "format": "dateOptionalTime"
    }
  }
}
4

0 に答える 0