gpt4 book ai didi

java - 使用不同父键的时间戳对节点进行排序

转载 作者:行者123 更新时间:2023-11-30 05:09:29 27 4
gpt4 key购买 nike

这是我的数据库结构:

- Feed
_ Parent key 1:
- key 1:
_ time_stamp: 3
- key 2:
_ time_stamp: 4
_ Parent key 2:
- key 1:
_ time_stamp: 2
- key 2:
_ time_stamp: 1

我的问题是当我使用

Query query = mFeed.child(parent).orderByChild("time_stamp")

我得到的是 time_stamp 仅按此顺序在父键上排序

3 - 4 - 1 - 2

我想要得到的订单是这样的:

1 - 2 - 3 - 4

请帮忙!!!

最佳答案

您需要了解,当您对 Firebase 数据库进行查询时,可能会出现多个结果。所以快照包含一个结果的列表。

你可以有这样的代码,做你想做的事:

mFeed.orderByChild("time_stamp").limitToLast(4).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
String res = childSnapshot.getValue().toString().trim();
// do what you want by adding them to arraylist or something
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException(); // do something for errors
}
});

此外,您并不总是需要按您想要的顺序从 Firebase 获取列表,您可以在检索后随意排序。

关于java - 使用不同父键的时间戳对节点进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53965137/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com