2014-11-25 113 views

回答

1

做到这一点最简单的方法是使用query_string

curl -XGET 'http://localhost:9200/index/tablename/_search?pretty' -d '{ 
    "query": { 
    "query_string": { 
     "query":"*keysearch*", 
     "fields": ["field1","field2","field3"] 
    } 
    } 
}' 

QUERY_STRING将使用或默认并支持通配符。

但是,如果使用前导通配符和尾随通配符,则性能不会很高。

+0

谢谢!它工作得很好。结果非常标准。但我发现这不是一个合理的安排。如何简化订单字段1,字段2,字段3的优先次序?请帮帮我! – Hunter007 2014-11-26 02:19:52

+0

我想这应该是一个单独的问题 - 但你需要研究得分,并看看你如何能**提高**场比另一场的得分。最简单但不太灵活的是在[索引时间](http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-core-types.html)上进行提升。查询中更灵活(查看**增强查询**或**功能得分**)。 – 2014-11-26 10:01:37

+0

我明白了。谢谢! – Hunter007 2014-11-27 07:26:49