[Elasticsearch] filter에 or 조건 사용하기

yoonene·2023년 2월 23일
0

Elasticsearch

목록 보기
5/14

입력한 "이름"이 문서 제목에 포함되는 문서와 "제목"이 문서 제목에 포함되는 문서에서 검색하고 싶었다.

  1. 한 가지 filter 조건만 사용할 때
{
    "query": {
        "bool": {
           "filter": [
                {
                    "regexp": {
                        "title": ".*"+charactor.replace(' ', '')+".*"
                        }
                  }
            ],
            "should": {
                "match": {
                    "text": query
                }
            }
        }
    }
}
  1. or 조건으로 두 가지 filter 중 하나 이상에 걸리는 문서에서 검색할 때
{
	"query": {
		"bool": {
			"filter": [{
				"bool":{
 					"should": [
 						{"regexp": {"title": ".*"+charactor.replace(' ', '')+".*"}},
 						{"regexp": {"title": ".*"+title.replace(' ', '')+".*"}}
 						]
 					}
 				}],
 			"should": {
 				"match": {
 					"text": query
 				}
			}
		}
	}
}
profile
NLP Researcher / Information Retrieval / Search

0개의 댓글