On Fri, Sep 27, 2024 at 9:15 PM Junwang Zhao <zhjw...@gmail.com> wrote: > > Hi hackers, > > per David's suggestion, this patch implements general > purpose array sort. > > We can do the following with this patch: > > SELECT array_sort('{1.1,3.3,5.5,2.2,4.4,6.6}'::float8[], 'asc'); > SELECT array_sort('{abc DEF 123abc,ábc sßs ßss DÉF,DŽxxDŽ džxxDž > Džxxdž,ȺȺȺ,ⱥⱥⱥ,ⱥȺ}'::text[]); > SELECT array_sort('{abc DEF 123abc,ábc sßs ßss DÉF,DŽxxDŽ džxxDž > Džxxdž,ȺȺȺ,ⱥⱥⱥ,ⱥȺ}'::text[], 'asc', 'pg_c_utf8'); > > -- > Regards > Junwang Zhao
PFA v2, use COLLATE keyword to supply the collation suggested by Andreas offlist. SELECT array_sort('{abc DEF 123abc,ábc sßs ßss DÉF,DŽxxDŽ džxxDž Džxxdž,ȺȺȺ,ⱥⱥⱥ,ⱥȺ}'::text[]); SELECT array_sort('{abc DEF 123abc,ábc sßs ßss DÉF,DŽxxDŽ džxxDž Džxxdž,ȺȺȺ,ⱥⱥⱥ,ⱥȺ}'::text[] COLLATE "pg_c_utf8"); I also created a CF entry[1] so it can be easily reviewed. [1]: https://commitfest.postgresql.org/50/5277/ -- Regards Junwang Zhao
v2-0001-general-purpose-array_sort.patch
Description: Binary data