如何从firebase获取swift3中的数据,其中值等于某个值。
在MySQL "SELECT * FROM users WHERE type = 'brown'";
中如何在Firebase中编写where
部分?
我有这个DB
我想从month
== currentMonth
(我有一个currentMonth
变量)获取其中的所有数据
答案 0 :(得分:2)
你可以Query
这样:
let ref = Database.database().reference()
ref.child("Budget")
.queryOrdered(byChild: "Month")
.queryEqual(toValue: "November")
.observe(.value, with: { (snapshot: DataSnapshot) in
var array:[Budget] = []
for budgetChild in snapshot.children {
let budgetSnapshot = budgetChild as! DataSnapshot
let budgetDictionary = budgetSnapshot.value as! [String:String]
let budget: Budget = Budget()
budget.description_ = budgetDictionary["Description"]
budget.month = budgetDictionary["Month"]
budget.type = budgetDictionary["Type"]
budget.value = budgetDictionary["Value"]
array.append(budget)
}
})
答案 1 :(得分:0)
据我所知,firebase实时数据库不支持这样的查询。相反,您需要调用整个参考'预算',然后在您的应用中本地过滤它。
FireStore显然有更好的查询支持,尽管它处于测试阶段。