2011-07-07 90 views
1

我想按几个字段中的最小值排序结果集。Solr按两个字段分钟排序?

所以读完functionquery文档后,这是我想出了:

sort={!func}min(dvd_available_from_tdt,dto_available_from_tdt)%20desc 

我也试过:

sort=_val_:min(dvd_available_from_tdt,dto_available_from_tdt)%20desc 

sort=_val_:"min(dvd_available_from_tdt,dto_available_from_tdt)"%20desc 

sort=_val_:"min(dvd_available_from_tdt,dto_available_from_tdt)%20desc" 

sort="{!func}min(dvd_available_from_tdt,dto_available_from_tdt)"%20desc 

sort={!func}min(dvd_available_from_tdt,dto_available_from_tdt)%20desc 

sort="min(dvd_available_from_tdt,dto_available_from_tdt)"%20desc 

,也引号的一些其他展示位置。但无论我总是得到这个错误:

HTTP ERROR: 400

Missing sort order.

任何人都可以指向正确的方向吗?

回答

0

使用可以匹配所有文件,以恒定的分数查询,再加上一个函数尝试。

http://localhost:8983/solr/select/?q=%3A + _val_:价格&版本= 2.2 &开始= 0 &行= 10 &缩进=上& debugQuery =真

此外,升级到Solr 3.3不是痛苦的,并有各种酷的新玩具,如功能分类。

+0

不错的主意!我的问题是,有很多因素可以应用和查询分析器是dismax。我已经写了一个更新shell脚本,我将明天运行。我是否正确假设我可以复制数据目录并保留索引?它们完全兼容吗?我在开发系统上的测试迄今没有显示任何错误。 –