java - 在 Firebase android 中的两个日期内搜索子值

标签 java android firebase firebase-realtime-database

这是json的样子

"Node" : {
      "1-5-2018" : {
        "10001" : {
          "centre" : "centre_1",
          "name" : "name_1",
          "paidAmt" : "25000"
        },
        "10002" : {
          "centre" : "centre_2",
          "name" : "name_2",
          "paidAmt" : "25000"
        },
        "10003" : {
          "centre" : "centre_3",
          "name" : "name_3",
          "paidAmt" : "10000"
        }
        },
      "2-5-2018 : {
        "10004" : {
            "centre" : "centre_4",
            "name" : "name_4",
            "paidAmt" : "20000"
            }
        }

我想检索给定日期内的值(中心、名称和支付金额)

我试过使用这个特定的查询,但它总是显示数据不存在

Query query = databaseReference1.orderByKey().startAt(fromDate.getText().toString()).endAt(toDate.getText().toString());

                query.addListenerForSingleValueEvent(new ValueEventListener() {
                    @Override
                    public void onDataChange(DataSnapshot dataSnapshot) {
                        if(dataSnapshot.exists()) {
                            Log.d(TAG, "Data exists within dates");
                            for(DataSnapshot ds : dataSnapshot.getChildren()) {
                                Log.d(TAG , "Data are " + ds.getValue().toString());
                            }
                        }
                        else {
                            Log.d(TAG, "Data does not exist within dates");
                        }
                    }

如果可以检索日期内的所有数据,请告诉我。将来我计划在不同日期内添加多个数据,并希望根据需要检索它们。也许每月或每周。

最佳答案

您使用的是时间戳而不是日期,它可能看起来像这样。

"Node" : {
      "1525188857" : {
        "10001" : {
          "centre" : "centre_1",
          "name" : "name_1",
          "paidAmt" : "25000"
        },
        "10002" : {
          "centre" : "centre_2",
          "name" : "name_2",
          "paidAmt" : "25000"
        },
        "10003" : {
          "centre" : "centre_3",
          "name" : "name_3",
          "paidAmt" : "10000"
        }
        },
      "1525188873" : {
        "10004" : {
            "centre" : "centre_4",
            "name" : "name_4",
            "paidAmt" : "20000"
            }
        }

关于java - 在 Firebase android 中的两个日期内搜索子值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50117242/

相关文章:

java - 使用装饰器的简单缓存机制

java - Java中的原始套接字

android - 带有 fragment 的布局设置

java - 无法获取 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/7.0.2/gradle-7.0.2.pom'

android - Firebase Jira 集成错误 - 无法访问 Jira 实例

java - 包装 Class<?> 类型泛型错误

java - java平台下如何测量上下文切换所花费的时间

java - 无法在 Android 中设置自定义对话框的宽度

javascript - 在 firebase 中同步运行函数

java - 将适配器设置为回收器 View 时出现空指针异常