使用equalTo方法

时间:2017-08-23 04:49:39

标签: android firebase firebase-realtime-database

enter image description here

我想通过timeStamp命令comments节点内的注释,获取以KsBazxx0bew6UOfUI5J开头的最后15条消息,女巫是comments节点的子节点。我正在尝试使用以下代码获取评论:

FirebaseRef.orderByChild("timeStamp").startAt(commentID).limitToLast(15).addChildEventListener(likeOrCommentsListener);

不幸的是我无法得到任何信息,这让我觉得查询错了。 如何使用这些限制获取消息。

2 个答案:

答案 0 :(得分:2)

由于您按时间戳排序,因此需要传入要开始查询的时间戳值:

FirebaseRef.orderByChild("timeStamp").startAt(150317519355)...

如果可能有多个具有相同时间戳的项目,您可以另外指定查询应从特定密钥开始:

FirebaseRef.orderByChild("timeStamp").startAt(150317519355, "KsBazxx0bew6UOfUI5J")...

答案 1 :(得分:0)

试试这个

 DatabaseReference databaseReference = Firebase.getInstance().getReference();
Query lastQuery = databaseReference.child("comments").orderByChild("timeStamp").limitToLast(15);
lastQuery.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
       //use this dataSnapshot
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        //Handle possible errors.
    }
});