I am storing data in Firebase storage.
Object Comment
with attribute timestamp
. When I push data from device to Firebase I'm populating timestamp
with currentTime and store in long
data type.
When I do retrieving the data with firebaseRef.orderByChild("timestamp").limitToLast(15)
result is not sorting how I expected.
I even played around with rules and no result:
{ "rules": { ".read": true, ".write": true, ".indexOn": "streetrate", "streetrate": { ".indexOn": ".value" } } }
I tried store timestamp
in String
data type, same issue.
You can specify the sort order for your data using orderBy() , and you can limit the number of documents retrieved using limit() . Note: An orderBy() clause also filters for existence of the given field. The result set will not include documents that do not contain the given field.
AngularFireDatabase allows you to work with the Realtime Database, Firebase's original database. It's an efficient, low-latency solution for mobile apps that require synced states across clients in realtime. Objects. Lists. Querying lists.
Firebase can order the items in ascending order by a given property and then returns either the first N items (limitToFirst()
) or the last N items (limitToLast()
). There is no way to indicate that you want the items in descending order.
There are two options to get the behavior you want:
Use a Firebase query to get the correct data, then re-order it client-side
Add a field that has a descending value to the data
For the latter approach, it is common to have a inverted timestamp.
-1 * new Date().getTime();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With