java - 陷入 firebase 查询

标签 java android

我在查询时陷入困境。我想根据“时间和点赞数”查询帖子,但不知道如何在 firebase 上查询。 示例:

Query mquery =FireBaseDatabase() getReference().getinstance()
.child("post").
orderedbychild("likes").startAt(30)

JSON 结构

帖子

   fubeukdo8r7yjdjehbdjjd
          message : "hello"
          likes : 40
          timestamp :  4 june 2019

   pcjhuwnd783nhdjhbdhj
          message : "hi there "
          likes : 30
          timestamp :  1 june 2019

   tyjggjkshhx92u79p093
          message : "how r u"
          likes : 25
          timestamp :  2 june 2019

    qeldhkdlje8fhj00jdkjeh
          message : "all is well"
          likes : 20
          timestamp :  1 june 2019

这里我只想要今天有超过 30 个赞的帖子......所以你知道我们如何在 firebase 上解决这个问题

最佳答案

Firebase 数据库不允许使用多个子句来查询数据。即在您的情况下按时间和喜欢进行查询。解决这个问题的一种方法是将点赞数和时间戳结合起来,得到一个新的数据值,并用它来查询。您可以通过 this 找到更多信息 或者,如果您更频繁地使用多个子句,最好使用 Firestore支持多个WHERE子句查询数据库。

关于java - 陷入 firebase 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56445797/

相关文章:

java - 如何使用HTMLUnit登录vbulletin论坛?

java - 子流中列表大小的总和

java - 将 wait(),notify() 方法放入 Object 类背后的概念

java - 通过 Spring Social 使用图像创建 Facebook 事件

android - 尽管 proguard 处于停用状态,但真实广告未在 Release模式下显示。可能是什么问题?

java - 使用hibernate注释的Mysql异常

Android O 预览版 : ConnectivityManager removed methods are not backward compatible

java - 获取Android中对象的所有数据

android - 从 Android 控制第三方 Cast session ?

java - Android AsyncTask #2 调用 detach()