基本query如何写,都是参考guide中的例子。
比如:https://lucene.apache.org/solr/guide/8_5/the-standard-query-parser.html
以下红框中的内容都是。
但是所有的query,最后其实都是归结到QParserPlugin的实现类的。也就是看这些plugin类的描述,以及它们支持的query方式,可以知道solr全部的query类型。
这是QParserPlugin的实现类
它们是否被默认启用,是在QParserPlugin的static块中。
如果没有在这个列表中的QParserPlugin需要启用,则必须将自己实现的jar放到solr的classpath下,然后在solrconfig.xml中添加以下行(指定name和实现的plugin类),然后重启solr。
<queryParser name="test" class="com.test.TempTestQParserPlugin"/>
以最常见的LuceneQParserPlugin为例,它的注册name是"lucene",所以它的query都是这样写的:
{!lucene XXX}XXX
而至于它具体支持的local Params,可以参考它返回的具体QParser实现类:LuceneQParser.parse(),在这个函数里,你可以查看到它去获取了哪些参数,比如df,op等等。