全部產品
Search
文件中心

Tablestore:BoolQuery

更新時間:Jun 30, 2024

BoolQuery查詢條件包含一個或者多個子查詢條件,根據子查詢條件來判斷一行資料是否滿足查詢條件。每個子查詢條件可以是任意一種Query類型,包括BoolQuery。

資料結構

message BoolQuery {
    repeated Query must_queries = 1;
    repeated Query must_not_queries = 2;
    repeated Query filter_queries = 3;
    repeated Query should_queries = 4;
    optional int32 minimum_should_match = 5;
}

名稱

類型

是否必選

描述

must_queries

repeated Query

多個Query列表,行資料必須滿足所有的子查詢條件才算匹配,等價於And操作符。

must_not_queries

repeated Query

多個Query列表,行資料必須不能滿足任何的子查詢條件才算匹配,等價於Not操作符。

filter_queries

repeated Query

多個Query列表,行資料必須滿足所有的子filter才算匹配,filter類似於query,區別是filter不會根據滿足的filter_queries個數進行相關性算分。

should_queries

repeated Query

多個Query列表,可以滿足,也可以不滿足,等價於Or操作符。

一行資料應該至少滿足should_queries子查詢條件的最小匹配個數才算匹配。

如果滿足的should_queries子查詢條件個數越多,則整體的相關性分數更高。

minimum_should_match

int32

should_queries子查詢條件的最小匹配個數。當同級沒有其他Query,只有should_queries時,預設值為1;當同級已有其他Query,例如must_queriesmust_not_queriesfilter_queries時,預設值為0。