Mục đích là sắp xếp một số mục theo điểm dựa trên tăng cường theo loại và cộng thêm nếu loại: mục xe đạp có hình ảnh. Kết quả sẽ là:
- Ô tô
- Thuyền
- Bikes với một hình ảnh
- Bikes mà không có một hình ảnh
Đây là cách tiếp cận truy vấn đầu tiên của tôi: type:"car"^10000 OR type:"boat"^5000 OR (type:"bike" AND image-type:[* TO *])^100 OR type:"bike"^5
(hoạt động tốt)
Nhưng tôi đã quên các mục dữ liệu cũ mà không có trường loại. Phải ở trong tập hợp kết quả như thế này:
- Ô tô
- Thuyền
- Bikes với một hình ảnh
- Bikes mà không có một hình ảnh
- Tất cả các mục mà không có một loại
Vì vậy, tôi đã thay đổi truy vấn của mình thành -type:[* TO *] OR type:"car"^10000 OR type:"boat"^5000 OR (type:"bike" AND image-type:[* TO *])^100 OR type:"bike"^5
và kết thúc mà không có kết quả.
Vì vậy, tôi tìm thấy chủ đề này và đã cố gắng để thay đổi truy vấn của tôi để -(type:[* TO *] OR -type:"car"^10000 OR -type:"boat"^5000 OR -(type:"bike" AND image-type:[* TO *])^100 OR -type:"bike"^5
) như thể hiện trong câu trả lời này https://stackoverflow.com/a/17211744/326905
Nhưng buồn thay tất cả các mục có số điểm tương tự :(
Tôi tự hỏi liệu [cú pháp này] (http://stackoverflow.com/questions/4238609/how-to-query-solr-for-empty-fields) có thể hoạt động không? –
@MartijnPieters cú pháp đó hoạt động riêng biệt, nhưng không phải cùng với OR. Tôi đã cập nhật câu hỏi của tôi –