Thread: Fw: Strange UNICODE sort order
Hi,
we're doing teste with UNICODE and Postgresql 7.4.2.
After insert some data we do a select like:
select * from my_tbl_01 order by field_01
Its results is totally misdone like:
_
-
(
A
O
O_
O-
O(
OA
O A
O_A
O-A
O(A
OAA
OAAR
OAARG
OAARGU
O AR
O_AR
O-AR
O(AR
O ARG
O_ARG
O-ARG
O(ARG
-
(
A
O
O_
O-
O(
OA
O A
O_A
O-A
O(A
OAA
OAAR
OAARG
OAARGU
O AR
O_AR
O-AR
O(AR
O ARG
O_ARG
O-ARG
O(ARG
Why don't Postgresql order it by clustering all the characters
that are equal, instead of sorting by the size of the string?
that are equal, instead of sorting by the size of the string?
TIA,
Ricardo.
Ricardo.
On Thu, 19 Aug 2004, INSYDE - lists wrote: > we're doing teste with UNICODE and Postgresql 7.4.2. Ordering is defined by the locale you're in. What locale are you using? > > After insert some data we do a select like: > > select * from my_tbl_01 order by field_01 > > Its results is totally misdone like: > > _ > - > ( > A > O > O_ > O- > O( > OA > O A > O_A > O-A > O(A > OAA > OAAR > OAARG > OAARGU > O AR > O_AR > O-AR > O(AR > O ARG > O_ARG > O-ARG > O(ARG > > Why don't Postgresql order it by clustering all the characters > that are equal, instead of sorting by the size of the string? It looks to me that you're probably in some "natural language" locale that ignores spaces and symbols in its first pass, thus, the first pass looks like: <empty> <empty> <empty> A O O O O OA OA OA OA OA OAA OAAR OAARG OAARGU OAR OAR OAR OAR OARG OARG OARG OARG