[英]Lucene query syntax
我想編寫一個Lucene查詢,它等效於以下SQL
where age = 25
and name in ("tom", "dick", "harry")
到目前為止,我能想到的最好的方法是:
(age:25 name:tom) OR
(age:25 name:dick) OR
(age:25 name:harry)
有沒有更簡潔的方式寫這個?
謝謝唐
age:25 AND name:(tom OR dick OR harry)
或者
+age:25 +name:(tom OR dick OR harry)
這樣行嗎?
age:25 AND (name:tom OR name:dick OR name:harry)
我了解這可能不是您想要的。 我不知道您提出這個問題的目的是排除age:25
子句,還是要消除name:
前綴。
如果您將QueryParser
的默認字段設為name
,則可以將其簡化為:
age:25 AND (tom OR dick OR harry)
它不是很簡潔,但是您可以嘗試:
(age:25) AND (name:tom OR name:dick OR name:harry)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.