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

Android端Firebase如何按时间戳过滤结果?博客APP时间筛选咨询

解决Firebase Firestore按时间过滤并降序获取帖子的问题

嘿,我来帮你搞定这个时间过滤的问题!你想要获取时间戳小于当前时间的新闻帖子,同时按最新的排在最前面,其实只需要在你的查询里加上一个whereLessThanOrEqualTo(或者whereLessThan,取决于你是否要包含刚好等于当前时间戳的内容)条件就行。

完整代码示例

FirebaseFirestore.getInstance().collection("news") 
    .orderBy("timestamp", Query.Direction.DESCENDING) 
    .whereLessThanOrEqualTo("timestamp", Timestamp.now()) // 过滤出时间戳≤当前时间的帖子
    .limit(2) 
    .get()

细节说明:

  • 如果你的帖子有定时发布的需求(比如设置了未来的timestamp),这个条件会自动过滤掉还没到发布时间的内容,只返回已经可以展示的帖子。
  • 如果你不想包含刚好等于当前时间的帖子,把whereLessThanOrEqualTo换成whereLessThan就可以了。
  • 注意:Firestore要求同时使用orderBy和where时需要创建复合索引。第一次运行这个查询时,控制台会抛出一个包含索引创建链接的错误,直接点击链接就能自动生成所需的索引,非常简单。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 17:32:45