Javascript 使用可选键参数限制firebase equalTo查询
我有一种感觉,我可能是在SQL背景下错误地理解了这个特性。文档很少,我还没有找到一个好的例子或解释。 我希望得到以下方面的澄清: 1 Firebase SDK支持startAt的可选关键参数, 按子级、值或优先级排序时,endAt和equalTo。你可以 使用包含 价值和关键。例如:startAt:{value:'some value',key: '某个键'} 我想使用此可选键参数限制我的按时间戳排序的值查询(orderByChild),以将结果仅限于那些子键具有指定值的结果Javascript 使用可选键参数限制firebase equalTo查询,javascript,firebase,firebase-realtime-database,angularfire,angularfire2,Javascript,Firebase,Firebase Realtime Database,Angularfire,Angularfire2,我有一种感觉,我可能是在SQL背景下错误地理解了这个特性。文档很少,我还没有找到一个好的例子或解释。 我希望得到以下方面的澄清: 1 Firebase SDK支持startAt的可选关键参数, 按子级、值或优先级排序时,endAt和equalTo。你可以 使用包含 价值和关键。例如:startAt:{value:'some value',key: '某个键'} 我想使用此可选键参数限制我的按时间戳排序的值查询(orderByChild),以将结果仅限于那些子键具有指定值的结果 this.angu
this.angularFireDatabase.list('/items', {
query: {
orderByChild: 'uploadedOn_',
equalTo: { key: 'user_uid', value: 'fSXX9twkttYqoS67mcRUmPawIep1' }
}
});
// JSON
{
"items" : {
"-KijNTXRKV5rjXEA7NdO" : {
"uploadedOn_" : -1493296081615,
"user_uid" : "fSXX9twkttYqoS67mcRUmPawIep1"
},
"-KijNoB4MivU4Ts6XgUV" : {
"uploadedOn_" : -1493296169733,
"user_uid" : "fSXX9twkttYqoS67mcRUmPawIep1"
},
"-KijbTMBydwQexbbErlk" : {
"uploadedOn_" : -1493300012491,
"user_uid" : "EAsIjLDFPRZDTq97qGQQyS7sBul1"
}
}
}
也许,我正试图模仿where SQL子句,而应该以不同的方式构造数据。
这个可选的键
参数似乎只能是项目自己的键。
在我的示例中,它是常规自动生成的Firebase按键(例如,“-KijNTXRKV5rjXEA7NdO”
)。
但是在这种情况下,如果结果总是一个单独的项目,您可以通过不使用可选的
键参数来访问它,那么使用equalTo
和orderByChild
将是什么样的用例呢
它将给出与ref.child(“key”)
相同的结果。equalTo()
的第二个参数基本上是无用的(与startAt()
和endAt()
不同,后者可用于分割范围
另见: