Re: Patch for collation using ICU
От | Stephan Szabo |
---|---|
Тема | Re: Patch for collation using ICU |
Дата | |
Msg-id | 20050326173421.F87420@megazone.bigpanda.com обсуждение исходный текст |
Ответ на | Re: Patch for collation using ICU (Palle Girgensohn <girgen@pingpong.net>) |
Ответы |
Re: Patch for collation using ICU
|
Список | pgsql-hackers |
On Sun, 27 Mar 2005, Palle Girgensohn wrote: > > > --On l�rdag, mars 26, 2005 08.16.01 -0800 Stephan Szabo > <sszabo@megazone.bigpanda.com> wrote: > > > On Sat, 26 Mar 2005, Palle Girgensohn wrote: > >> I've noticed a couple of things about using the ICU patch vs. pristine > >> pg-8.0.1: > >> > >> - ORDER BY is case insensitive when using ICU. This might break the SQL > >> standard (?), but sure is nice :) > > > > Err, I think if your system implements strcoll correctly 8.0.1 can do this > > if the chosen collation is set up that way (or at least naive tests I've > > done seem to imply that). Or are you speaking about C locale? > > No, I doubt this. > > Example: set up a cluster: > $ initdb -E LATIN1 --locale=sv_SE.ISO8859-1 > $ createdb foo > CREATE DATABASE > $ psql foo > foo=# create table bar (val text); > CREATE TABLE > foo=# insert into bar values ('aaa'); > INSERT 18354409 1 > foo=# insert into bar values ('BBB'); > INSERT 18354412 1 > foo=# select val from bar order by val; > val > ----- > BBB > aaa > (2 rows) > > > Order by is not case insensitive. It shouldn't be for any system, AFAIK. As It is on my machine... for the same test: foo=# select val from bar order by val;val -----aaaBBB (2 rows) I think this just implies even greater breakage of either the collation or strcoll on the system you're trying on. ;) Which, of course, is a fairly reasonable reason to offer an alternative. Especially if it's generically useful.
В списке pgsql-hackers по дате отправления: