pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Josh Berkus <josh@agliodbs.com>
To: Wei Weng <wweng@kencast.com>
To: pgsql-performance@postgresql.org
Subject: Re: Does this matter?
Date: Fri, 1 Nov 2002 12:23:48 -0800
Message-ID: <200211011223.48962.josh@agliodbs.com> (raw)
In-Reply-To: <1036181881.24810.1.camel@Monet>
References: <1036181881.24810.1.camel@Monet>

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).  

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.

-- 
-Josh Berkus
 Aglio Database Solutions
 San Francisco




view thread (10+ messages)  latest in thread

Message-ID: <200211011223.48962.josh@agliodbs.com>
Permalink:  ../200211011223.48962.josh@agliodbs.com/
Also on:    postgresql.org/message-id/200211011223.48962.josh@agliodbs.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: josh@agliodbs.com, wweng@kencast.com, pgsql-performance@postgresql.org
  Subject: Re: Does this matter?
  In-Reply-To: <200211011223.48962.josh@agliodbs.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox