Sort records
order by
Use order by
to sort an array of records by a specific field. This is useful when sorting an array first before processing it further.
When you use order by
in a View layout item, it is first sorted by a (selected) column header and second by the value specified after order by
.
order by
works best when you sort records by a number.
Example
Result: The entries of the Invoices table are sorted by the Total field (from small to large).
Example
Restrict the selection of records with where
or brackets [...]
.
The value after order by
does not necessarily have to be a field name, it can also be manipulated by functions, for example.
Result: The entries with today's date of the Invoices table are sorted by the number in the Invoice no. text field.
3
refers to the position of the number within the invoice no., which in our case, for example, starts with the 4th position: NO-12574
(0
=N
, 1
= O
, 2
=-
, 3
= 1
(the first number)).
Order by
works best when you sort records by a number.
Tip: Sorting strings
Be careful when sorting strings. Strings are not sorted alphabetically, but according to the index of the characters. So first all upper case letters are sorted alphabetically, then the lower case letters.
Explanation
ABcD is thus sorted to ABDc. To get the desired result, simply unify the values by upper()
or lower()
. Then all initial letters are first set to upper case or lower case respectively.
Result: ABcD
Alternative: Use the Ninox function sort()
instead of order by
.
Example
You have a table Example for order by with a First name field. It contains the following records: Aaron, Eddi, conrad, beate, Dahlia, and Fatima. Insert the following script into a formula field.
Result: Aaron, Dahlia, Eddi, Fatima, beate, conrad
This is not the desired alphabetical sorting...
We add upper()
, which sets all entries to upper case for sorting.
Result: Aaron, beate, conrad, Dahlia, Eddi, Fatima 🎉
If you only need the list of names and not the records themselves, we recommend using sort()
:
Result: Aaron, beate, conrad, Dahlia, Eddi, Fatima
Last updated