我試圖從firebase中獲取一些數據。在我的對象中,我有Firebase查詢不允許在多個屬性上進行排序?
Recent
|_UniversitId
|_objectiId1
| |_ userId:1
| |_ timestamp:143242344
|_objectiId2
|_ userId:1
|_ timestamp:143243222
我的查詢路徑是http://firbasedbname.com/Recent/UniversityId
。我需要獲取userId id等於1的條目,並按照時間戳設置順序。我嘗試了以下方法,
FIRDatabaseQuery *query = [[firebase queryOrderedByChild:@"userId"] queryEqualToValue:@"1"];
這會正確提取我的用戶。但有沒有一種可能的方式來按照時間戳排序。要做到這一點,我試着把另一個queryOrderedByChild
。但它說它只能使用一次。我該如何解決這個問題?
作爲穆罕默德說(和大衛解釋了鏈接的視頻),你可以在與火力地堡數據庫的一個屬性只能訂購/過濾器。在你的情況下,似乎你可以將這兩個值組合成一個屬性並對其進行過濾。看到我的答案在這裏的一個例子:http://stackoverflow.com/questions/26700924/query-based-on-multiple-where-clauses-in-firebase –
我剛剛擴大我對這個問題的答案,包括一個例子用範圍查詢('startAt'和'endAt')。 –