数据索引 编辑文档

本篇文档介绍如何在规则表达式中使用 .indexOn 规则为节点建立索引,提高查询效率。

规则表达式包含以下两种 .indexOn 的索引方式:

索引方式 说明
orderByChild 根据子节点索引
orderByValue 根据值索引

提示:


节点的名称 (key) 和优先级 (priority) 已默认建立索引,不需要额外设置。

orderByChild 索引

为子节点建立索引,可以提高 orderByChild 的查询效率。

例如,在下面学生的信息中,可以根据姓名、年龄、分数进行排序,数据结构如下:

{
"students": {
"Jack": {
"age" : 21,
"score" : 88,
"weight": 63
},
"Lucy": {
"age" : 22,
"score" : 91,
"weight" : 49
}
}
}

通过 .indexOn 规则,为这些节点建立索引:

{
"rules": {
"students": {
".indexOn": ["age", "score"]
}
}
}

orderByValue 索引

为节点的值建立索引,可以提高 orderByValue 的查询效率。

例如,为学生分数建立一个排行榜,数据结构如下:

{
"scores": {
"Jack" : 55,
"Lucy" : 81,
"LiLei" : 80,
"HanMeimei" : 93,
"Michael" : 66,
"Jane" : 78
}
}

通过 .indexOn 规则,为这些节点建立索引。

{
"rules": {
"scores": {
".indexOn": ".value"
}
}
}
野狗新手?
立即注册,为你提供安全可靠的实时通信云服务。
没找到需要的文档?
你可以提交工单反馈 或 阅读常见问题
期待收到你的反馈,帮助我们改进文档。
参与调研