From: Peter J. <pj...@wa...> - 2004-05-13 07:39:28
|
Jorge Andr=E9s Brugger <li...@da...> wrote: > Well, thanks for your interest, but I think is a little more > complicated.[...] The problem is that I dont know if the accented charac= ter is the last > of the string used for querying, or not. Do you understand me? To put it bluntly, you didn't try my suggestion and you don't know how multi-level collations work. Using this test script: set names ISO8859_1; create database 'C:\es_es2.fdb' user 'sysdba' password 'masterkey'; create table t1 ( c1 char(8) character set ISO8859_1, c2 char(8) character set ISO8859_1 collate ES_ES ); insert into t1 (c1, c2) values ('Paaa', 'Paaa'); insert into t1 (c1, c2) values ('Puuu', 'Puuu'); insert into t1 (c1, c2) values ('PEPO', 'PEPO'); insert into t1 (c1, c2) values ('pepo', 'pepo'); insert into t1 (c1, c2) values ('Pepo', 'Pepo'); insert into t1 (c1, c2) values ('Perejil', 'Perejil'); insert into t1 (c1, c2) values ('P=E9rez', 'P=E9rez'); select * from t1 where c1 BETWEEN 'pe' and 'pezzz'; select * from t1 where c2 BETWEEN 'pe' and 'pezzz'; The result from the first select, which uses a column with codepoint collation is: C1 C2 =3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D pepo pepo But the result of the second query, which uses a column with multi-level collation, is: C1 C2 =3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D PEPO PEPO pepo pepo Pepo Pepo Perejil Perejil P=E9rez P=E9rez As you can see, the item with the accented e is selected, which is easier to understand when you do some tests how ES_ES sorts strings. Best Regards, Peter Jacobi |