当前位置: 首页 > 知识库问答 >
问题:

Firebase查询具有两次orderBychild条件[重复]

贺宏逸
2023-03-14

我有一个问题:

我想使用两次orderByChild()条件创建firebase查询

第一个条件:比较字段

第二个条件:按特定字段对元素排序。

这是我将要执行的查询的一个示例

ref.orderByChild("id").equalTo("1").orderByChild("name").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
    for (DataSnapshot d : dataSnapshot.getChildren()) {
        Model m = d.getValue(Model.class);
    }
}

@Override
public void onCancelled(FirebaseError firebaseError) {

    }
});

如果我尝试使用此查询,应用程序将崩溃。可以在Firebase中创建这种类型的查询吗?

提前感谢。

共有2个答案

严开宇
2023-03-14

否无法创建此类查询,因为您不能使用两个orderByChild(),以下是可能的:

orderByChild("name").equalTo(name);
orderByKey().equalTo("key_here");
orderByChild("name").limitToFirst(10)

更多信息在这里:

https://firebase.google.com/docs/reference/android/com/google/firebase/database/Query.html

万博涛
2023-03-14

Firebase不支持多个orderbychild()查询。

查看这些链接来构建您的数据库

Android firebase应用多个查询

Firebase如何设置orderBychild多个

Android Firebase多重排序

Firebase中基于多个where子句的查询

 类似资料:
  • 我有一个表“Quote”,映射在hibernate中,它有一个由整数id和日期组成的复合键,还有几个附加列。我想编写一个条件查询,它使用DetachedCriteria来获取每个id中日期最长的行。 在sql中,我可能会编写一个查询,比如 在hibernate中,我认为可以像这样为“group by”子查询创建DetachedCriteria(其中Quote是映射表的类,“Qid”是键的复合id类

  • 我正在尝试使用spring查询mongodb。我们有一个集合,其中包含一棵树,并包含一个项目列表作为树路径(因此我们可以轻松遍历树)。我们有一个需要返回特定节点的所有子节点的查询。我们的查询基于选择路径中有节点(父节点)且比父节点(级别)低一级的所有节点。我们的标准如下: 唉,当我们在mongodb上调用它时,我们会得到以下异常: 组织。springframework。数据mongodb。Inva

  • 问题内容: 我如何结合这两个更新语句: 问题答案: 您可以使用CASE表达式,如下所示:

  • 我正在尝试使用分区键和排序键查询Dynamodb表。排序键是unix日期,因此我想在排序中请求这2个日期之间的x分区键。我目前可以通过表扫描来实现这一点,但为了提高速度,我必须将其移至查询。我在网上找不到人们使用分区键和排序键查询他们的表的任何像样的例子。 我仔细阅读了这篇文章https://docs.aws.amazon.com/sdk-for-go/api/service/dynamodb/#

  • 问题内容: 系列中的下一个’‘ This query is quite slow when the timestamps are chosen such that many rows are matched: 我相信这是因为我在两个字段(DeviceId和StartedAt)上混合了范围条件。 如果是这样,我该怎么办才能解决问题?也许有什么 触发索引合并的使用? 问题答案: 在=“范围”和“范围”

  • 我想从firebase搜索,其中的名字包含的字符从搜索框在任何位置的名字?有谁能像这样帮帮我吗

  • v3.0开始,herosphp 提供了一套全新的设置查询条件的接口: MysqlModel::where($field, $opt, $value); 参数名称 参数类型 参数说明 $field string OR function 字段名称, 如果传入的是 function 的话,则说明是闭包. 闭包传入的是一组查询条件。 $opt string 操作符,如果不传入 $value 的情况下,$o

  • 和异常: 实体:GirMotiuRebuig 这个标准起作用了: