Sự khác nhau giữa các truy vấn bool MUST
và SHOULD
bool trong ES là gì?Sự khác biệt về Elasticsearch giữa PHẢI và NÊN truy vấn bool
Nếu tôi CHỈ muốn kết quả chứa cụm từ của tôi thì tôi có nên sử dụng must
không?
Tôi có một truy vấn mà chỉ nên chứa các giá trị nhất định, và cũng không có kết quả rằng có một ngày/timestamp thấp hơn so với ngày nay thời gian/ngày - VỚI DOANH NGHIỆP
Cũng
tôi có thể sử dụng nhiều bộ lọc bên trong một phải thích mã dưới đây:
"filtered": {
"filter": {
"bool" : {
"must" : {
"term" : { "type" : 1 }
"term" : { "totals" : 14 }
"term" : { "groupId" : 3 }
"range" : {
"expires" : {
"gte": "now"
}
}
},
Một chút muộn cho bên, nhưng làm thế nào về 'phải' cho loại, hoặc giá cả, và' nên' cho thuộc tính , như kích thước và màu sắc. Bây giờ, nếu kích thước L và XL được chọn, đó là một nên giữa hai, nhưng nếu màu xanh lá cây cũng được chọn, nó phải là một phải có (kích cỡ L HOẶC XL) VÀ (màu xanh lá cây). Điều đó có thể không? – Mave
Tôi tin rằng trong trường hợp đó _filters_ có thể là một cách tiếp cận tốt hơn cho các thuộc tính. Chúng được hướng đến các đối sánh chính xác và không dựa trên các tìm kiếm dựa trên mức độ liên quan. Xem [truy vấn và bộ lọc] (http://www.elastic.co/guide/en/elasticsearch/guide/master/_queries_and_filters.html) trong tài liệu để biết thêm thông tin. –
Tôi nghĩ bạn cần có 'minimum_number_should_match = 1' để thực thi ý tưởng rằng" ít nhất một trong các mệnh đề này phải khớp ". –