java - Solr 返回 'oldest' 条记录而不是 'newest' ; 'Rows' 和 'Start' 参数

标签 java php sql mysql database

为什么 Solr 在指定这些参数时首先返回“最旧”的记录。

您可能知道这些主要用于“分页”目的。

如果我选择每页 10 行,并且起始设置为 0,这意味着在我看来应该显示最新的 10 条记录。但是,Solr 显示最旧的 10 条记录。

如何更改此设置?

谢谢

最佳答案

Solr 不是数据库,而是搜索引擎。

获取行的顺序不是基于它们的插入顺序,而是基于特定的排名算法。

您可以在此处找到更多信息:

Solr Relevancy FAQ

Why are search results returned in the order they are? If no other sort order is specified, the default is by relevancy score.

Solr Relevancy CookBook

您可以指定排序顺序:使用排序参数:

示例,来自 Solr Tutorial :

Solr provides a simple method to sort on one or more indexed fields. Use the 'sort' parameter to specify "field direction" pairs... 

q=video&sort=price desc 
q=video&sort=price asc 
q=video&sort=inStock asc, price desc 

关于java - Solr 返回 'oldest' 条记录而不是 'newest' ; 'Rows' 和 'Start' 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361886/

相关文章:

java - 流行/标准 Java 库中是否有一个用于延迟计算值的类?

java - 低延迟记录通常相隔纳秒的时间戳

php - 一个防止 SQL 注入(inject)和 XSS 的 PHP 函数

php - MySQL 从每个表中获取用户的最新数据

sql - Datamapper "first"方法正在查询整个关系

java - 如果我想在其背后运行 Java 代码,我应该使用什么 Web 服务器?

java - 在运行时镜像 java 中找不到适合 sqlite 的驱动程序

php - POST后在AJAX中获取空数据

javascript - 如何获取 Javascript 在 $_POST 方法上生成的值?

SQL查询以按日期范围折叠重复的值