【问题标题】:Sort Firebase data in ascending/Descending Order [duplicate]按升序/降序对 Firebase 数据进行排序[重复]
【发布时间】:2019-08-25 02:08:48
【问题描述】:

我正在处理库存管理项目,我的客户希望按升序和降序销售库存。

我的股票结构如下

我想根据产品的销售额对数据进行排序。

注意:此数据库中有数千种产品,因此下载然后对数据进行排序并不是一个好主意。我相信这会减慢这个过程。

【问题讨论】:

标签: java android firebase firebase-realtime-database


【解决方案1】:

您可以使用 orderByChild 函数从 Firebase 中按升序获取排序数据。您需要在 table 上创建索引。 请参阅 firebase 排序数据部分 https://firebase.google.com/docs/database/android/lists-of-data

//降序:

在客户端执行此任务,因为您已经对列表进行了排序。使用集合内置函数来反转列表 Collections.reverse(inputList)

希望对你有帮助:)

【讨论】:

  • 感谢您的回复,这篇文章解决了我的问题 50% :) 使用这篇文章我可以按降序对数据进行排序,但我想按升序对数据进行排序以及任何想法如何做是吗?
【解决方案2】:

您不能对存储在数据库中的数据执行排序操作。但是,您可以按特定的排序顺序检索数据,例如:

Query myStocksQuery = databaseReference.child("stocks")
        .orderByChild("Sold");
myStocksQuery.addChildEventListener(new ChildEventListener() {
    // do your stuff here
});

【讨论】:

  • 我知道了,Ashok Kumar 已经指导我找到解决方案,但是这个查询以降序显示数据我想以升序显示相同的数据以及任何想法?
  • Firebase 不会按降序返回,您必须在客户端执行。
  • 在客户端执行此任务,因为您已经对列表进行了排序。使用集合内置函数来反转列表 Collections.reverse(inputList)
  • 是的,我明白了,我按降序(如您建议)检索了最后 100 个项目组中的数据,然后通过反转它们来显示这些记录。重复相同直到没有元素。感谢您的帮助:)
  • 是的,收藏更简单。
猜你喜欢
  • 2020-07-18
  • 1970-01-01
  • 2021-10-12
  • 1970-01-01
  • 2018-05-21
  • 2015-08-30
  • 2011-11-16
  • 2016-10-18
相关资源
最近更新 更多