BoolQuery menggabungkan beberapa subkueri menjadi satu kueri majemuk menggunakan logika Boolean. Setiap subkueri dapat berupa tipe apa pun, termasuk BoolQuery lainnya.
Data structure
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;
}
|
Parameter |
Type |
Required |
Description |
|
must_queries |
repeated Query |
No |
AND — subkueri yang harus dipenuhi oleh baris. Semua kondisi dalam daftar ini harus sesuai. |
|
must_not_queries |
repeated Query |
No |
NOT — subkueri yang tidak boleh dipenuhi oleh baris. Baris yang sesuai dengan kondisi apa pun dalam daftar ini akan dikecualikan. Ketika beberapa subkueri ditentukan, hanya baris yang tidak sesuai dengan salah satunya yang dikembalikan — setara dengan NOT(A OR B). |
|
filter_queries |
repeated Query |
No |
AND (no scoring) — subkueri yang harus dipenuhi oleh baris, mirip dengan must_queries, tetapi kecocokan tidak berkontribusi terhadap skor relevansi. |
|
should_queries |
repeated Query |
No |
OR — subkueri opsional yang dapat dipenuhi oleh baris. Baris harus memenuhi paling sedikit jumlah kondisi yang ditentukan oleh minimum_should_match. Baris yang memenuhi lebih banyak kondisi akan menerima skor relevansi yang lebih tinggi. |
|
minimum_should_match |
int32 |
No |
Jumlah minimum kondisi should_queries yang harus dipenuhi oleh suatu baris. Jika hanya should_queries yang ditentukan, nilai default-nya adalah 1. Jika must_queries, must_not_queries, atau filter_queries juga ditentukan, nilai default-nya adalah 0. |