Java:根据Firebase数据库中的数据对子项进行排序

时间:2017-05-13 07:26:57

标签: java sorting firebase firebase-realtime-database

Image here. Data does not sort accordingly like I wanted (O+, O+, A)

目前,我的数据存储与上图完全相同,我希望相应地放置所有血型。例如,在列表结束之前它只有0+。它将继续使用不同的血型,如A +,A-等。

firebase可以实际排序数据吗?我环顾四周,但找不到任何东西

1 个答案:

答案 0 :(得分:1)

在Firebase控制台中,所有节点都按字典顺序按键排序,但无法更改。

但是,当您在客户端上检索数据时,您可以选择按其中一个子属性进行排序。这样,它们将按照向客户端显示的时间进行排序。例如:

// the reference to where your people are stored
DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference();
// create the query
Query peopleBloodTypeQuery = mDatabase.child("people").orderByChild("bloodgroup");
// query the people
peopleBloodTypeQuery.addChildEventListener(new ChildEventListener() {
    // add a child added listener
    @Override public void onChildAdded(DataSnapshot dataSnapshot, String previousChildName) {
        // do whatever here - I just print the key of each added child
        Log.d(TAG, "onChildAdded:" + dataSnapshot.getKey());
    }
});