【问题标题】:Solr: custom filed name conflicts with pseudo field namesSolr:自定义字段名称与伪字段名称冲突
【发布时间】:2014-06-13 20:18:32
【问题描述】:

我有一个带有名为 score 的自定义字段的架构,它与 Solr 的内置伪字段 score 冲突。也就是说,当我使用fl:*,score 发出查询时,伪字段score 将覆盖我自定义的score 字段。

P.S.:使用像 fl=myscore:score,score 这样的字段别名不起作用。

如何在查询结果中保留这两个字段?

【问题讨论】:

  • 为什么不直接更改字段名称?
  • 您也可以尝试给字段名称起一个别名,看看它是否有效(google: solr field alias),但我同意之前的建议:为什么不直接重命名字段?名称冲突很容易出错。
  • @femtoRgon 感谢您提供有用的 cmets。但目前我们的索引大约是 100GB,我们更喜欢不重新索引数据的解决方法。
  • 您找到解决方法了吗?

标签: search solr lucene solr4


【解决方案1】:

我知道它有点老了,我知道这并不能回答这个问题,但我看到这篇文章时遇到了一个与此相关的问题,我碰巧找到了解决方法。

我的问题不是如何通过名为score 的自定义字段来fl,而是如何按此字段排序。出于同样的原因,如果您按score DESC 排序,它使用Solr 的伪字段score

一种解决方法是按sum(score, 0) 排序。

【讨论】:

  • 我收到undefined field: \"score\"
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-17
  • 2018-09-24
  • 1970-01-01
  • 2018-05-13
  • 1970-01-01
  • 1970-01-01
  • 2011-02-01
相关资源
最近更新 更多