我试图理解为什么使用'q'和'df'搜索时,下面的行为会有差异。在我的理解中,如果没有指定'q',它将默认为'df'。
示例搜索的目的是在文档的“标题”字段中查找“锻炼计划”。
搜索方法#1http://localhost:8983/solr/workoutstuff/select?q=title:锻炼计划
搜索方法#2http://localhost:8983/solr/workoutstuff/select?df=title
结果
搜索方法#1中有结果,但搜索方法#2中没有结果。
我想知道为什么。谢谢!
如果您不指定df,可能仍然会有一个默认搜索字段,可能是字段文本。(取决于您的配置)。
因此,对于搜索方法1:在标题字段中搜索术语Workout,在默认字段(可能是文本)中搜索单词Plans,因为标题表达式周围没有引号。例如标题:“Workout Plans”
搜索方法2:在默认字段标题中搜索锻炼或计划。同样是因为没有引号。(假设默认运算符是OR)
因此,如果您在搜索值周围加上引号,您的两种搜索方法应该返回相同的结果。