java如何通过值寻找键_java – 如何使用Firebase查询等于(值,键)?

有一些边缘情况不需要orderBy …(),但是一般来说,在过滤操作(equalsTo(),startAt(),endAt())之前需要一个orderBy …().

我强烈建议您先阅读Firebase programming guide for Android(其中95%适用于常规Java).在这个指南中花了几个小时,这里可以节省数十个问题.例如:这是section on queries.

阅读后,您可能还想在NoSQL Data Modeling阅读本指南.它涵盖了Nosql数据建模中的许多常见模式,并将帮助您早日实现将SQL查询映射到Nosql数据库是一个逻辑思想,但很少是一个好的一.

我的初始(没有任何想法你的用例,除了“我需要能够找到一个用户的钱包”)型号:

UserWallet

"48bde8f8-3b66-40bc-b988-566ccc77335c"

"F4PvtvNT2Z"

coins: 26

someList

element1

element2

在上述模型中,我将UserWallet下的电子钱包和用户倒置,以便为用户查找钱包变得更容易.

ref.child('UserWallet').child(auth.uid).addValueEventListener(...

请注意,这里没有涉及任何查询,因此无论您的数据库中有多少用户,加载速度都将相同.

或者:

User

"48bde8f8-3b66-40bc-b988-566ccc77335c"

email: "toto@acme.com"

username: "userTest1"

Wallet

"F4PvtvNT2Z"

coins: 26

someList

element1

element2

UserWallet

"48bde8f8-3b66-40bc-b988-566ccc77335c"

"F4PvtvNT2Z"

现在我们已经完成了平整的结构.要确定用户的钱包,请转到UserWaller / $uid,然后从钱包/ $walletid加载每个钱包.它可能是一个更多的代码,但它将是非常有效的(因为没有涉及的查询).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值