我想知道是否可以按照您从SOLR请求文件的顺序进行排序。我正在运行基于 In 的查询,并希望SOLR根据我的要求返回它们。
在(4,2,3,1)中应该返回我订购的文件4,2,3,1。
感谢。
答案 0 :(得分:3)
在solr中需要Sorting,按字段排序。
我认为“在基础查询中”意味着:获取fieldx
在(val1
,val2
中具有值的文档。您可以将字段作为多值字段并在该字段上facet。 facet查询是一种“进入”搜索,开箱即用(可以这么说),它也可以进行更复杂的搜索。
编辑OP的查询:
使用JSON here中的多值字段更新文档。见行
"my_multivalued_field": [ "aaa", "bbb" ] /* use an array for a multi-valued field */
至于方面查询,请检查this。
你需要做一个或多个fq语句:
&fq=field1:[400 to 500]
&fq=field2:johnson,thompson
另外,请阅读您需要在存储而非索引字段上进行分析的事实(在上面的链接中)。
答案 1 :(得分:0)
您可以使用QueryOptions和字段排序轻松应用排序(ExtraParams属性 - 我按保存字段排序,降序):
var results = _solr.Query(textQuery,
new QueryOptions
{
Highlight = new HighlightingParameters
{
Fields = new[] { "*" },
},
ExtraParams = new Dictionary<string, string>
{
{"fq", dateQuery},
{"sort", "savedate desc"}
}
});