Re: [GENERAL] 'a' == 'a '
От | Bruce Momjian |
---|---|
Тема | Re: [GENERAL] 'a' == 'a ' |
Дата | |
Msg-id | 200510250341.j9P3fBW14657@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: [GENERAL] 'a' == 'a ' (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [GENERAL] 'a' == 'a '
|
Список | pgsql-hackers |
Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > > OK, I understand now. It is tempting to think that the difference > > between char() and varchar() is that internally they use a different > > collating sequences, but that isn't the case. If it were, space would > > be ignored during comparisons any place in the string, when in fact, is > > it is only trailing space that char() ignores, e.g.: > > No, you don't understand. The standard defines PAD SPACE as making > *trailing* spaces irrelevant to comparisons, not embedded or leading > spaces. And they regard PAD SPACE as an attribute of a collation rather > than of the string datatype. This seems pretty wacko to me (in > particular it's hard to see how NO PAD is useful with char(N) storage) > but that's what they did. So you can have two collating sequences where in one trailing space is significant, and another that isn't? Strange. > > What additional documentation is needed? > > Some specific discussion of the relationship to the standard would be > helpful, perhaps. I guess, but explaining it seems pretty complex in itself, and I am unsure what value it adds. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
В списке pgsql-hackers по дате отправления: