1、基础的查询语法,关键词查询:域名+“:”+搜索的关键字
content:java //查询content域里带有java这个term的
2、范围查询,域名+“:”+[最小值TO 最大值],范围查询在lucene中不支持数值类型,支持字符串类型。在solr中支持数值类型。
size:[1 TO 1000] //查询size域里从1~1000的的
3、组合条件查询
1)+条件1 +条件2:两个条件之间是并且的关系and
+filename:apache +content:apache
2)+条件1条件2:必须满足第一个条件,应该满足第二个条件
+filename:apache content:apache
3)条件1 条件2:两个条件满足其一即可。
filename:apache content:apache
4)-条件1条件2:必须不满足条件1,要满足条件2
-filename:apache content:apache
查询全部
*:*
第二种写法:
条件1 AND 条件2
条件1 OR 条件2
条件1 NOT 条件2
什么是默认域:在创建QueryParser对象时第一个参数是默认域,第二个参数是分词器
QueryParser queryParser = new QueryParser("fileContent", new IKAnalyzer());
如果指定默认域为fileContent则如下所示,都是查询fileContent域里有test term的:
fileContent:test
等效于
test