如何在Firebase iOS中过滤搜索

时间:2017-05-24 12:00:08

标签: ios swift firebase firebase-realtime-database

如何在条件上过滤Firebase查询。我试过这段代码

    let productsQuery = FIRDatabase.database().reference().child("Products").queryLimited(toFirst: 10)
    //method 1
    productsQuery.queryEqual(toValue: "Pending", childKey: "Status")
    //method 2
    productsQuery.queryOrdered(byChild: "Status").queryStarting(atValue: "Pending").queryEnding(atValue: "Pending")

但它总是返回整个集合,这是巨大的(超过10k条目)

我想只获取“Status”=“Pending”

的对象

Backend shown here

我确信Firebase中会存在这样的基本过滤。请告诉我。

1 个答案:

答案 0 :(得分:0)

您需要以这种方式合并queryOrdered(byChild:)queryEqual(toValue:)并使用.observeEvent

let productsQuery = FIRDatabase.database().reference().child("Products")
productsQuery.queryOrdered(byChild: "Status").queryEqual(toValue:"Pending")
             .queryLimited(toFirst: 10).observeSingleEvent(of: .value, with: { (snapshot : FIRDataSnapshot) in


})