Elasticsearchで全文検索する際にmatchとmatch_phraseの違いがはっきり身についていないのでまとめてみる。 version: Elasticsearch 7.5 matchクエリ matchクエリを使うといわゆる曖昧検索ができる。matchクエリに渡した文字列はanalyzeされてから検索に使用される。 例えばtitleというフィールドに「2021年春に発売される新着本の特集!!NEW!!」という文字を保存していたとして、「2021春」で検索できるかどうかを考えてみる。 GET sample-index/_search { "query": { "match": { "title": "2021春" } } } 解析されたクエリはORで検索される indexをkuromojiで形態素解析されるように設定したので、「2021春」は「2021」と「春」に形態素解析される
![Elasticsearchのmatchとmatch_phraseの違い - grep Tips *](https://cdn-ak-scissors.b.st-hatena.com/image/square/8189c876ae872a85af9f70908c68aa8f7d9806b8/height=288;version=1;width=512/https%3A%2F%2Fwww.greptips.com%2Fimages%2Fogp%2F1314.png)