2017-04-12 33 views
0

這是我的彈性搜索查詢, 我想在data.title下搜索所有語言,而不是特別是eng。elasticsearch在任何孩子中搜索

如果我把data.title有0個結果。

{ 
    "bool": { 
    "must": [ 
     { 
     "span_near": { 
      "clauses": { 
      "0": { 
       "span_multi": { 
       "match": { 
        "wildcard": { 
        "data.Title.eng": "method" 
        } 
       } 
       } 
      }, 
      "1": { 
       "span_multi": { 
       "match": { 
        "wildcard": { 
        "data.Title.eng": "system" 
        } 
       } 
       } 
      } 
      }, 
      "slop": 1, 
      "in_order": false 
     } 
     } 
    ] 
    } 
} 
+0

您可以發佈您的架構映射嗎? – user3775217

回答

0

相反通配符查詢時,儘量使用QUERY_STRING: -

例子: -

{ 
     "query": { 
      "query_string": { 
       "default_field": "data.Title.*", 
       "query": "*zz* *ell*" 
      } 
     } 
    } 

QUERY_STRING比通配符搜索更有效。 要獲得它們之間的更多差異,請檢查這個link