I am trying to match the title of a product listing to a database of known products. My first idea was to put the known products and their metadata into elasticsearch and try to find the best match with multi_match. My current query is something like:
{
  "query": {
    "multi_match" : {
      "query": "Men's small blue cotton pants SKU123", 
      "fields": ["sku^2","title","gender","color", "material","size"],
      "type" : "cross_fields"
    }
  }
}
The problem is sometimes it will return products with the wrong color. Is there a way i could modify the above query to only score items in my index that have a color field equal to a word that exists in the query string? I am using elasticsearch 5.1.