On Thu, Oct 11, 2012 at 1:12 PM, Craig Ringer <ringerc@xxxxxxxxxxxxx> wrote:
The difference between SMALLINT and BOOLEAN (or TINYINT if Pg supported it) is 1 byte per column. If you had 30 smallint columns and quite a few million rows it might start making a difference, but it's *really* not worth obsessing about. Unless you have high-column-count tables that contain nothing but lots of integers of range 0-255 there's no point caring.
--
Craig Ringer
To give an example, I have tables for storing master records (year master, security master, etc.) for which pkid TINYINT is just sufficient.
These pkid's are used as fk constraints in tables for storing business transactions.
The no. of rows in business transactions tables is in millions.
Here, I NEED to worry about the storage space occupied by the pkid fields.
-- Vineet