我正在使用ElasticSearch。 當我做這個查詢:與全文匹配的ElasticSearch「匹配」
{query: "blackberry -q10"}
我得到正是我想(有參考黑莓但不是所有的Q10結果)。
但是,我想限制搜索字段只是「標題」字段。例如,_source文件有標題,正文,標籤等,我只想搜索標題。該ElasticSearch「匹配」,似乎適合我...
{query: {match: {title: "blackberry -q10"}}}
雖然這成功地僅搜索標題,它仍然會返回與具有Q10的稱號,不像上面的搜索結果。
我在看the match documentation,但似乎無法弄清楚。
謝謝!
我仍然非常在意邊緣案例。這個解決方案需要我自己解析輸入字符串,這非常不理想。例如,我沒有考慮過的引用或其他否定/添加方式呢?有沒有什麼辦法來保持我的第一個例子的內置解析,而僅限制搜索哪些字段? –
用一個使用字段查詢的示例更新了我的評論,該查詢基本上是一個簡化的query_string查詢。 Query_string使用您最初使用的Lucene語法,並且當您不指定(這是您的原始查詢工作原因)時,它也是默認搜索查詢。 – Zach
優秀!這正是我所期待的。 –