You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Firebase查询排序问题:同高分用户如何按时间戳倒序排列?

解决方法

直接在原查询中添加第二个orderBy条件,指定按timestamp字段降序排列即可。当多个用户的highScore相同时,Firestore会自动使用这一二级排序规则,将最晚获得高分的用户排在前面。

修改后的查询代码如下:

const q = query(
  collection(db, 'users'),
  orderBy("highScore", "desc"),
  orderBy("timestamp", "desc")
);

注意事项

  • 确保users集合中的每个文档都包含timestamp字段,推荐存储Firestore原生的Timestamp类型,或Unix时间戳这类可正确排序的时间格式。
  • Firestore需要手动创建复合索引来支持多字段排序:首次运行修改后的查询时,控制台会抛出包含索引创建链接的错误,点击链接即可快速完成索引配置。

内容的提问来源于stack exchange,提问作者Jaydendev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 21:24:22