Elasticsearch中的match_phrase_prefix、prefix和wildcard查询详解
    		       		warning:
    		            这篇文章距离上次修改已过453天,其中的内容可能已经有所变动。
    		        
        		                
                在Elasticsearch中,match_phrase_prefix、prefix和wildcard查询是用来在文本字段中查找特定词项或者词项前缀的方法。
match_phrase_prefix查询:用于查找包含特定词项前缀的文档,并且这些词项在文档中的顺序与提供的词项顺序相匹配。
GET /_search
{
  "query": {
    "match_phrase_prefix": {
      "fieldname": {
        "query": "foo bar",
        "slop":  
      }
    }
  }
}prefix查询:用于查找特定字段中以指定前缀开头的词项。
GET /_search
{
  "query": {
    "prefix": {
      "fieldname": {
        "value": "foo"
      }
    }
  }
}wildcard查询:用于通过通配符查找特定字段中的词项。
GET /_search
{
  "query": {
    "wildcard": {
      "fieldname": {
        "value": "f*bar"
      }
    }
  }
}注意:wildcard查询的性能开销很大,因为它会对所有匹配的词项执行通配符匹配,所以应当避免在高基数字段上使用。
评论已关闭