您可以在架构中声明一个可排序的整数字段(我们称之为 clickNum),默认情况下将每个索引文档设置为零。当用户打开文档时,您的应用会通过设置 clickNum = clickNum + 1 来触发 clickNum 字段的更新。
在查询端,您可以根据您的主要排序参数(如果有)和 clickNum 设置多重排序:
sort=<field name>+<direction>[,clickNum+desc]
您可以通过将点击日志存储在外部数据库中并使用查询后详细说明重新排序结果来避免文档更新,但恕我直言,这不是一个好的选择。