这是不可能的。 你需要能够建立完整的节点路径来查询。 没有通配符。
你migth要考虑以这样的方式重复数据,你可以在没有父节点的情况下找到它。 这种数据复制在nosql类型的数据库中很常见。
如果我们从字面上理解这个问题,你不需要查询,答案是肯定的,你可以根据所提供的信息得到这些数据。
不过同样不会是查询。
你问的是
获取第一个节点的值
要获得 首节 之内 -M5Cc9t 节点,您可以读取顶层节点-M5Cc-Pc......然后读取该快照中的第一个节点。
这将给你一个包含项目01的-M5Cc9t节点。同样,你要求的是第一个节点,这样就可以了。
下面是基于你的结构的代码(我缩写了节点名称)。
func readChildNode() {
let nodeRefWeKnow = self.ref.child("DEVPCD").child("-M5uklV").child("-M5Cc-Pc")
nodeRefWeKnow.observeSingleEvent(of: .value, with: { snapshot in
let allSnapshots = snapshot.children.allObjects as! [DataSnapshot]
if let firstSnapshot = allSnapshots.first {
let name = firstSnapshot.childSnapshot(forPath: "name")
print(name)
}
})
}
和输出
Snap (name) Item 01