From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
Cc: | Andrus <kobruleht2(at)hot(dot)ee>, Merlin Moncure <mmoncure(at)gmail(dot)com>, Jim Nasby <Jim(dot)Nasby(at)bluetreble(dot)com>, PostgreSQL General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to find greatest record before known values fast |
Date: | 2014-10-03 22:59:36 |
Message-ID: | 13509.1412377176@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> writes:
>> page 28:
>>
>> Unlike many
>> databases, char(n) is NOT stored as afixed-sizedfield
>> in Postgres. It is treated exactly the sameas
>> varchar(n)except for being padded
> Which directly contradicts the information on page 27:
This info is probably not as well worded as it could be, but it's not
really wrong. The key point is that char(N) is blank-padded (thereby
wasting space) to be N *characters*, but that is not necessarily N
*bytes*, because of possible multi-byte characters. Therefore the engine
has to treat it as a variable-length datatype.
I believe in some some other DBMSes, char(N) means N *bytes* and is
treated as a fixed-size datatype. Dunno what they do with multibyte
encodings.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2014-10-03 23:15:58 | Re: How to find greatest record before known values fast |
Previous Message | Adrian Klaver | 2014-10-03 22:36:50 | Re: How to find greatest record before known values fast |