본문 바로가기

D.S/DE

[ES] 211104목 - elasticsearch query value에 콜론(:)있을 시 검색

728x90

filter를 통해 url주소를 넘겨줘서 정확한 검색결과를 뽑으려 했는데 검색이 안 된다. 다른 field로 검색하면 되는데 안 된다? 살펴보다 특수기호때문에 그런게 아닌가 생각이 들어서 찾아봤더니 ..그렇네;;

url에는 "http:// ..."에 ":"가 들어가 있어서 문제가 되는 듯 했다. filter말고 다른 검색방법이 있나 찾아봤더니 match_phase를 쓰라고 한다.

 {   "query": {     "match_phrase": {       "link": "https://m.blog.naver.com/aaa/2223353366344"     }   },   "size": 500,   "_source": [] }  


"match_phrase"는 bool -> must 안에 들어갈 수 있다.

 {     "query" : {             "bool": {               "must": [{"match_phrase": {"link": link_}}, {"match_phrase": {"kind":"detail"}}],               "filter":[]             }                  } }  



참조:

반응형