Re: Does this matter?

Wei Weng <wweng@kencast.com>

From: Wei Weng <wweng@kencast.com>
To: josh@agliodbs.com
Cc: pgsql-performance@postgresql.org
Date: 2002-11-01T20:52:22Z
Lists: pgsql-performance
Josh:

Since I need to use a GUID as the primary key, I have to use the char
datatype.

On Fri, 2002-11-01 at 15:23, Josh Berkus wrote:
> Wei,
> 
> > Does it make a performance difference if I use a char(20) or a char(36)
> > as the primary key? My thought is no, but I would like to hear more
> > opinions.
> 
> Yes, it does, though probably minor unless you have millions of records.  CHAR 
> is padded out to the specified length.  Therefore the index on a char(36) 
> column will be a little larger, and thus a little slower, than the char(20).  
Does it affect the INSERT/UPDATE/DELETE operations on tables or simply
the SELECT operation or both?

> 
> Now, there would be no difference between VARCHAR(20) and VARCHAR(36) unless 
> you used some of the extra 16 characters on most rows.
> 
> Either way, for tables of a few thousand records, I doubt that you'll notice 
> the difference.   BTW, why not use a SERIAL value as a surrogate primary key?
> 
> > And a little further off topic(since we have many database experts
> > here), does it matter on MS SQL server 7?
> 
> Yes, same reason.
-- 
Wei Weng
Network Software Engineer
KenCast Inc.