读取键StartWith一些文本Firebase

时间:2017-08-30 19:51:50

标签: firebase search firebase-realtime-database

我需要搜索密钥Firebase。但我需要找到所有键以特定文本开头,例如:“User”..

我的数据库密钥(示例):

  • 用户1
  • User023
  • User316551561
  • NoUserkey

因此,在这种情况下,我的应用中只检索前3个键,因为它们以文本开头:“用户”

如何在我的应用中实现此功能?

Android studio 2.3.3。谢谢你!

1 个答案:

答案 0 :(得分:1)

首先,如果您的搜索区分大小写且UserA和userA相同,则应考虑仅存储小写表单,因为搜索 use 不会在密钥处生成数据用户A

但无论如何,解决方案将是这样的(JavaScript)

var ref = firebase.database.ref(path_to_search_keys)
var query = ref.orderByKey().startAt(text).endAt(text + 
    '\uf8ff').limitToFirst(some_amount);
return query.once('value');

另见Autocomplete with Firebase