簡體   English   中英

Lucene查詢語法

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM