[英]ElasticSearch: How to specify specific fields to search at?
現在,在我的映射中,我將“ include_in_all”設置為true,這意味着所有字段都包含在_all字段中。
但是,當我搜索時,不是浪費空間,而是將所有內容放在_all字段中,我想指定特定字段以確定(並考慮映射中的提升分數)。
如何創建一個查詢,讓Elastic Search只查看特定字段(而不僅僅是1個字段),並考慮到我在映射過程中給予的提升?
從multi_match查詢開始。 它允許您查詢多個字段,並賦予它們不同的權重,這通常是您擁有搜索框時要走的路。
{
"multi_match" : {
"query" : "this is a test",
"fields" : [ "subject^2", "message" ]
}
}
query_string功能更強大,但也更加危險,因為它已解析並且可能會中斷。 僅在您需要時使用它。
您無需在_all
字段中保留數據以查詢字段。
您可以使用query_string或bool查詢來搜索多個字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.