2
在Solr(3.6)中,我可以对每个字段使用fq
,但对于包含内部Colon [:]
或Slash [/]
的字段,则不能使用,例如正常url
字段。SOLR Filter Query(fq)不适用于包含冒号[:]或斜杠[/]的字符串?
让我们假设一些记录会看起来像:
{
"title":"Innovation Life and Strategy",
"url":"http://www.example.com/innovation_life_strategy",
},
{
"title":"Simple Life",
"url":"http://www.example.com/simple_life",
},
..
我可以简单地使用fq
针对不包含Colon [:]
或Slash [/]
像 “标题” 在这里简单的领域:
fq=title:(Strategy)
是的,它返回第一条记录。
但随后,它返回不是为url
字段,其具有冒号[:]或斜线[/]内:
fq=url:(life)
不,它永远不会返回任何记录的。
- 我不知道为什么,但我认为这是因为
Colon [:]
或Slash [/]
内明显。
我该怎么办?
什么分析对这两个领域进行了什么。看来你正在对标题进行文本分析,因此作为令牌的匹配将被创建。对于url作为单个字符串,除非您有分析来创建令牌过滤器查询不起作用。在这种情况下,你也许会更好地搜索然后过滤。当你想过滤一个类别的结果并且最好对其进行最少的分析时,过滤将会生效。 – Jayendra 2012-08-10 07:03:05