2010-03-28 28 views
5

Tôi có một số id cụ thể như 1,2,5,11,64589 trong solr (kiểu int)Truy vấn phạm vi Solr cho id specefic như/solr/select? Q = x: [1,2,5,11,64589]

Tôi muốn truy vấn truy vấn như ttp: // localhost: 8983/solr/select? Q = x: [1,2,5,11,64589] nhưng không hoạt động (gặp lỗi). Làm thế nào có thể làm điều đó ???

Lưu ý: tôi có thể thực hiện với "HOẶC" nhưng tôi muốn cách đơn giản (và giới hạn vấn đề khác trong url tối đa chiều dài char)

+0

có vẻ là không có cách khác. Bạn muốn đạt được những gì? – Karussell

Trả lời

18

Đây là những lựa chọn của bạn:

  • ?q=x:(1 OR 2 OR 5 OR ...)
  • ?q=x:1 OR x:2 OR x:5 OR ...
  • ?q=x:(1 2 5 ...) với defaultOperator = "HOẶC" (chưa thử cái này nhưng nó cũng làm việc)
  • Viết riêng bạn RequestHandler
  • Viết của riêng QueryParser
+0

cảm ơn rất nhiều phản hồi nhanh chóng – Hamid

+0

@Hamid: Vui lòng đặt những gì bạn đã sử dụng từ các mẫu truy vấn do Mauricio đề xuất. –

3

Trong Solr 4.10 và Heliosearch 0.07, bạn có thể sử dụng các từ ngữ hiệu quả hơn truy vấn:

q={!terms f=id}1,2,5,11,64589 
+1

url được cung cấp không hoạt động –

+0

Dường như Heliosearch đã được chiếu nắng. GitHub của họ nói rằng hầu hết các thay đổi của họ đã được sáp nhập trở lại vào lõi Solr. Cú pháp "truy vấn cụm từ" này phải là một phần của nỗ lực hợp nhất đó. Tôi có thể xác nhận điều này hoạt động tốt trong Solr 5.5.2. –

Các vấn đề liên quan