将新数据添加到实时数据库的顶部

时间:2021-07-31 15:33:56

标签: java android firebase-realtime-database

我使用的是实时数据库。

我知道当我向 firebase 添加新项目时,它会出现在最后一个位置.. 例如..如果我的数据库中有名为“讲座”的列表,就像这样

Lectures: 
    lecture1:
        name:"lec 1 name"

    lecture2:
        name:"lec 2 name"

    lecture3:
        name:"lec 3 name"

    lecture4:
        name:"lec 4 name"

当我向这个列表发送新项目(ex.Lecture5)时,它会被添加到它的底部 就这样

Lectures: 
    lecture1:
        name:"lec 1 name"

    lecture2:
        name:"lec 2 name"

    lecture3:
        name:"lec 3 name"

    lecture4:
        name:"lec 4 name"

    lecture5:
        name:"lec 5 name"

有没有办法让新项目添加到列表的顶部,就像这样:

Lectures: 
    lecture5:
        name:"lec 5 name"

    lecture1:
        name:"lec 1 name"

    lecture2:
        name:"lec 2 name"

    lecture3:
        name:"lec 3 name"

    lecture4:
        name:"lec 4 name"

当添加另一个新项目时显示如下:

Lectures: 
    lecture6:
        name:"lec 6 name"

    lecture5:
        name:"lec 5 name"

    lecture1:
        name:"lec 1 name"

    lecture2:
        name:"lec 2 name"

    lecture3:
        name:"lec 3 name"

    lecture4:
        name:"lec 4 name"

等等...

如果有什么办法,请告诉我

2 个答案:

答案 0 :(得分:0)

我也在使用 firebase 实时数据库,也许有一种方法可以做到,但我看不到它的用途,也从来不需要它。

数据库用于存储数据,它在存储值的顺序方面绝对没有区别,因为在客户端使用数据时,您可以并且应该按照给定的条件对其进行排序。

这里有更多关于在实时数据库中对值进行排序/排序的信息 https://firebase.google.com/docs/database/web/lists-of-data#sort_data

答案 1 :(得分:0)

子节点只是在控制台中按升序排列lexicographically。除非您使用 orderByKey() 方法,否则查询时没有区别。