2014-06-10 2 views
16

나는 다음과 같은 용어 필터를탄성 검색 용어 필터가 작동하지 않습니까?

{ 
    "query": { 
    "term": { 
     "name": "terry harvey" 
    } 
    } 
} 

을 할 노력하고있어 나는 '검색 필터 "대신"용어 필터 "를 사용하는 경우 I 0 안타

{ 
    took: 3 
    timed_out: false 
    _shards: { 
    total: 5 
    successful: 5 
    failed: 0 
} 
hits: { 
    total: 0 
    max_score: 0 
    hits: [ ] 
    } 
} 

받고 있어요, 나는 48를 얻을 수 안타.

내가 뭘 잘못하고 있니? = (

감사합니다!

답변

19

기간 쿼리 및 필터 그들은 단지 정확한. 일치하는 반면에, 일치하는 쿼리를 분석하고 이름 필드는 아마뿐만 아니라 분석되고있다 찾을 의미 분석되지 않습니다. 더 많은 정보 here

+0

"terry harvey"와 같은 정확한 이름의 문서를 얻으려면 어떻게해야합니까? –

+4

필드 매핑을 [not_analyzed] (http://www.elasticsearch.org/)로 변경해야합니다. guide/en/elasticsearch/guide/current/mapping-intro.html # _literal_index_literal) 정확한 값과 전체 텍스트로 쿼리해야하는 경우 [멀티 필드] (http : //www.elasticsearch .org/가이드 /en/elasticsearch/reference/current/mapping-core-types.html#_multi_fields_3) 유형. –

+0

고맙습니다, 내가 해 줄께 =) –

관련 문제