Locale and pattern matching - Mailing list pgsql-sql

From Hélder M. Vieira
Subject Locale and pattern matching
Date
Msg-id 001801c5fb98$025ac0f0$580bfea9@hmv02
Whole thread Raw
Responses Re: Locale and pattern matching
List pgsql-sql
A question about encoding, some days ago, led me to concentrate my attention 
on the subject and perform a few tests on two different 8.1 installations, 
configured as follows:

Machine 1 -  pt_PT(Portuguese_Portugal.28591)/LATIN1
Machine 2 -  pt_PT(Portuguese_Portugal.28605)/LATIN9

In both machines, case insensitive pattern matching designed to match the 
letter 'A' will indeed match 'A' and 'a' but not the accented forms.
Generalizing, an accented or unaccented vowel in the pattern will only match 
that vowel in upper or lowercase forms if the accent is the same as 
specified  in the pattern.
For instance, if the pattern specifies an uppercase 'A' with an accute 
accent, then it will match a lowercase 'A' with an accute accent, but not an 
upper or lower case 'A' with a tilde.
This behaviour seems inconsistent with that of the ORDER BY clause, which 
considers all forms of a vowel as equal (uppercase/lowercase,accented/not 
accented).
Shouldn't case insensitive pattern matching follow the same collation 
weights that ORDER BY uses ?
Can someone please elaborate on this subject ?

Another question, for european users:
Until now, I've been selecting LATIN1 encoding, but after a few tests, I 
came to think that LATIN9 is a better option (the euro sign...).
For those who regularly use LATIN9, what is your opinion ? Is it indeed a 
better option ?


Thank you.

Hélder M. Vieira









LATIN CAPITAL LETTER A WITH GRAVE





pgsql-sql by date:

Previous
From: "Leif B. Kristensen"
Date:
Subject: Re: Error from trigger
Next
From: Keith Worthington
Date:
Subject: dow question