查询中的SOLR排序方式
我想知道是否可以按照您向SOLR请求文件的顺序进行排序。我正在基于的查询中运行一个,希望SOLR根据我请求的顺序返回它们 在(4,2,3,1)中,应将4,2,3,1订购的文件退还给我 谢谢。您需要在solr中按字段订购 我假设“基于In的查询”的意思类似于:获取其查询中的SOLR排序方式,solr,solrnet,Solr,Solrnet,我想知道是否可以按照您向SOLR请求文件的顺序进行排序。我正在基于的查询中运行一个,希望SOLR根据我请求的顺序返回它们 在(4,2,3,1)中,应将4,2,3,1订购的文件退还给我 谢谢。您需要在solr中按字段订购 我假设“基于In的查询”的意思类似于:获取其fieldx中有值的文档(val1,val2)。您可以将一个字段作为多值字段,并在该字段上。facet查询是一种“正在”搜索,开箱即用(可以这么说),它还可以进行更复杂的搜索 根据OP的查询编辑: 更新带有JSON多值字段的文档。看到
fieldx
中有值的文档(val1
,val2
)。您可以将一个字段作为多值字段,并在该字段上。facet查询是一种“正在”搜索,开箱即用(可以这么说),它还可以进行更复杂的搜索
根据OP的查询编辑: 更新带有JSON多值字段的文档。看到线了吗
"my_multivalued_field": [ "aaa", "bbb" ] /* use an array for a multi-valued field */
关于执行方面查询,请检查
您需要执行一个或多个fq语句:
&fq=field1:[400 to 500]
&fq=field2:johnson,thompson
另外,请仔细阅读(在上面的链接中)您需要对存储字段而不是索引字段进行分面处理的事实。您可以轻松地使用QueryOptions和字段排序进行排序(ExtraParams属性-我按保存日期字段进行排序,降序):
var results=\u solr.Query(textQuery,
新查询选项
{
Highlight=新的HighlightingParameters
{
Fields=new[]{“*”},
},
ExtraParams=新字典
{
{“fq”,dateQuery},
{“排序”,“保存日期描述”}
}
});
是的,我是说。但是我如何利用它来完成我需要的东西呢?
var results = _solr.Query(textQuery,
new QueryOptions
{
Highlight = new HighlightingParameters
{
Fields = new[] { "*" },
},
ExtraParams = new Dictionary<string, string>
{
{"fq", dateQuery},
{"sort", "savedate desc"}
}
});