2011-12-30 36 views

回答

9

还指出,performancewise你应该使用此过滤器查询:

&q=name:ipod&fq=price:[* TO 100] 
5

据我所知,我不相信Solr/Lucene支持大于/小于。它可以通过程序来完成,比如整数和日期(在你的情况下,货币值,因为只有两位小数担心)。

例如,本地,Lucene的和Solr查询分析器支持小于或等于(< =):

?q=name:ipod AND price:[* to 99.99] 

这将使你,你要寻找的低于100美元,提供的数据不涉及分数的小数部分。

对于诸如日期和整数之类的东西或其他具有明显有限差异的事物,可以递减(或者在大于,递增的情况下)您要使用的值。

编辑:检查版本6.5 Solr的文档。它包含专属范围支持。参考指南的第272页说明。

http://mirror.cc.columbia.edu/pub/software/apache/lucene/solr/ref-guide/apache-solr-ref-guide-6.5.pdf

本质上,使用大括号来表示小于。

?q=name:ipod AND price:{* TO 100} 
相关问题