About Sort Order
When you sort collections, you must understand these concepts:
- Some fields that appear to be numeric (for example, Account) might actually be character-based and would use text-character sort order.
- Character-based fields use
text-character sorting. For example, if you attempt an ascending sort by
account number, the accounts might be sorted like this:
(blank field)
#222
222
2220
@201
XL-64
xl-64
In text-character (ascending) order, these rules exist:
- Character strings are generally sorted from left to right. That is, the first character (furthest left) is evaluated, then the second, and so on.
- A blank field comes before any other character. Thus, any blank fields always display first.
- Special characters might come before numerals, between numerals and letters, or after letters. Thus, #222 comes before 222, but @201 comes after 222.
- Numerals display in correct numeric order, regardless of size.
- Numerals display before alphabetic characters.
- Upper-case characters display before lower-case characters. Thus, XL-64 comes before xl-64.
- Unicode strings typically are compared using a "word sort" technique, where all punctuation marks and other non-alphanumeric characters, except for the hyphen and the apostrophe, come before any alphanumeric character. The hyphen and the apostrophe are treated differently than the other non-alphanumeric symbols, in order to ensure that words such as coop and co-op stay together within a sorted list.