2015-10-07 111 views
-1

所有领域比方说,我有以下文件:弹性搜索查询与名称

{ 
    "name" : "abc", 
    "something" : { 
     "url" : "asd" 
    } 
} 

{ 
    "name" : "abc", 
    "something-else" : { 
     "url" : "asd" 
    } 
} 

是否有可能创建一个查询,这将要求任何字段url = asd所有文件?

+0

您的描述并不详尽。什么是文件的映射?任何'url'应该等于'asd'或者两个urls应该等于'asd'?你有没有尝试过任何东西? –

+0

@AndreiStefan我已更新我的问题 –

+0

您可以使用[multi_match](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html# _literal_fields_literal_and_per_field_boosting):'{ “查询”:{ “multi_match”:{ “查询”: “无所谓”, “田”: “*的.url”] }} } ' –

回答

1

试试这个:

GET /index/type/_search 
{ 
    "query": { 
    "multi_match": { 
     "query": "asd", 
     "fields": ["*.url"] 
    } 
    } 
} 

query_string

GET /index/type/_search 
{ 
    "query": { 
    "query_string": { 
     "fields": ["*.url"], 
     "query": "asd" 
    } 
    } 
} 
+0

我可以在查询字符串中使用它吗? –

+0

我告诉过你没有提供全部图片。 –

0

您可以使用should过滤器:

{ 
    "query": { 
    "filtered": { 
     "query": { 
     "match_all": {} 
     }, 
     "filter": { 
     "bool": { 
      "should" : [ 
      { "term": { "something.url": "asd" }}, 
      { "term": { "something-else.url": "asd" }} 
      ] 
     } 
     } 
    } 
    } 
} 
+0

注意,有他的示例文档中有两个“url”字段。 – Val

+0

与文件不匹配else -url –

+0

谢谢,我更新了我的答案。 – Maroun