我正在寻找一种在多个字段中查询值的方法。基本上,我正在构建一个简单的搜索引擎,用户可以在其中键入ie;Java如何XML JSON";并且它将在3个不同字段CCD_ 1中搜索这些值。
我在一些博客上读到,我应该查询所有字段q=*:*
,然后根据这些字段进行筛选,例如fq=categories:java,xml,how,to,json description:java,xml,how,to,json tags:java,xml,how,to,json
这是有效的:|但像这样只复制粘贴值似乎是不正确的。
有正确的方法吗?我已经研究了一段时间,但还没有找到解决方案。
感谢任何帮助,谢谢
您可以使用defType=edismax
来获取扩展的dismax处理程序。这是为了处理用户键入的查询(即您键入的内容(。然后,您可以使用qf
(查询字段(告诉edismax处理程序要搜索哪些字段(以及每个字段的可选权重(:
q=Java How to XML JSON&defType=edismax&qf=categories^5 tags description
将搜索字符串"的每个部分;Java如何XML JSON";并且categories
字段中的任何命中将被加权为其他两个字段中的命中的五倍。