我在Firebase中存储了用户配置文件,其中包含一个键“Pricing”和一些保存为整数的值。我也有没有那个钥匙的档案。
我执行:

usersReference = Database.database().reference(fromURL: "https://someRef")
    .child("users")
    .queryOrdered(byChild: "Pricing")
    .queryEnding(atValue: pricingToSearch)
    .observe(...)

但是,查询结果总是同时显示没有该键的配置文件。我怎样才能把他们排除在搜索范围之外呢?

最佳答案

您只告诉查询生成器按子“Pricing”对数据进行排序,并且“pricingToSearch”的最后一个有效值是pricingToSearch。您没有给它任何关于第一个有效值的提示。根据documentation

Children with a nil value for the specified child key come first.

如果您只添加
queryStarting(atValue: 0)

所以
usersReference = Database.database().reference(fromURL: "https://someRef")
    .child("users").queryOrdered(byChild: "Pricing")
    .queryStarting(atValue: 0)
    .queryEnding(atValue: pricingToSearch)
    .observe(...)

关于ios - Firebase查询显示错误数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50096651/

10-09 13:38