查询中的所有术语都应存在于字段的组合内容中。例如。当我搜索术语组合时,如果出现以下情况,则应返回文件:
所以q.op=AND
,但跨越两个单独的字段。我该如何写我的查询?
如果我将索引更改为使用单个多值字段而不是两个单独的字段,这会使这种情况更容易吗?
答案 0 :(得分:3)
是的,您可以使用copyfield将这两个字段合并为一个多值字段。
<copyField source="metadata" dest="metadata_desc" />
<copyField source="descrition" dest="metadata_desc" />
可以使用q=metadata_desc:"some search"&q.op=AND
使用q.op
搜索所有条款将是强制性的,并且应该与要返回的文档匹配。默认值为OR
。
这将在任一字段和字段中进行匹配。