简单的solr查询不起作用-我错过了什么?
我很绝望,因为一个简单的solr查询并没有像我期望的那样工作。 也许我错过了什么?可能是我的solr配置缺少什么?请快看一下 我使用solr 7.6版,并使用管理GUI中的内置查询工具 这是一个显示四个简单文档的结果简单的solr查询不起作用-我错过了什么?,solr,Solr,我很绝望,因为一个简单的solr查询并没有像我期望的那样工作。 也许我错过了什么?可能是我的solr配置缺少什么?请快看一下 我使用solr 7.6版,并使用管理GUI中的内置查询工具 这是一个显示四个简单文档的结果 { "responseHeader":{ "status":0, "QTime":1, "params":{ "q":"id:product_*", "fl":"id,user_s", "_":"15677796050
{
"responseHeader":{
"status":0,
"QTime":1,
"params":{
"q":"id:product_*",
"fl":"id,user_s",
"_":"1567779605014"}},
"response":{"numFound":4,"start":0,"docs":[
{
"id":"product_1",
"user_s":"rjKv1opWMLYQ"},
{
"id":"product_5",
"user_s":"rjKv1opWMLYQ"},
{
"id":"product_7",
"user_s":"plOG1Pv0gQvk"},
{
"id":"product_8",
"user_s":"plOG1Pv0gQvk"}]
}}
我想查询ID=product_1或user_s=rjKv1opWMLYQ的文档。我希望得到两个结果,一个是id=product_1的文档,另一个是id=product_5的文档。但是通过查询字符串id:product\u 1或user\s:rjKv1opWMLYQ
我得到以下结果
{
"responseHeader":{
"status":0,
"QTime":1,
"params":{
"q":"id:product_1 OR user_s:rjKv1opWMLYQ",
"fl":"id,user_s",
"_":"1567779605014"}},
"response":{"numFound":1,"start":0,"docs":[
{
"id":"product_1",
"user_s":"rjKv1opWMLYQ"}]
}}
与查询字符串id:product\u 1 user\u s:rjkv1opmlyq
,id:product\u 1和user\s:rjkv1opmlyq
,id:product\u 1和&user\u:rjkv1opmlyq
和id:product\u 1 | | user\s:rjkv1opmlyq
完全相同
两个字段的字段架构如下所示
<field name="id" type="string" indexed="true" stored="true" required="true" />
<dynamicField name="*_s" type="string" indexed="true" stored="true" docValues="true" multiValued="false" />
通用类型架构如下所示:
通用字段架构如下所示:
这里发生了什么?请同时发布您的solrConfig。以及记录在Solr日志中的查询。如果在运行查询时选中管理屏幕()中的“debugQuery”复选框,您是否可以包括得到的响应?使用debugQuery,我们应该能够看到Solr是如何解析您的查询的(在响应的调试节点下查看)。另一件要尝试的事情是选中该页面上的“edismax”复选框,看看是否得到不同的结果。请同时发布您的solrConfig。以及记录在Solr日志中的查询。如果在运行查询时选中管理屏幕()中的“debugQuery”复选框,您是否可以包括得到的响应?使用debugQuery,我们应该能够看到Solr是如何解析您的查询的(查看响应的调试节点下)。另一件要尝试的事情是选中该页面上的“edismax”复选框,并查看是否得到不同的结果。