From: | Raymond O'Donnell <rod(at)iol(dot)ie> |
---|---|
To: | John R Pierce <pierce(at)hogranch(dot)com> |
Cc: | "Satish Burnwal (sburnwal)" <sburnwal(at)cisco(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Complete row is fetched ? |
Date: | 2010-04-16 08:18:45 |
Message-ID: | 4BC81D65.5030407@iol.ie |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 16/04/2010 07:11, John R Pierce wrote:
> Satish Burnwal (sburnwal) wrote:
>> I have a ques - say I have a table that has 10 columns. But in a simple
>> select query from that table, I use just 3 columns. I want to know
>> whether even for fetching 3 columns, read happens for all the 10 columns
>> and out of that the required 3 columns are returned ? ie Does the
>> complete row with all the 10 columns are fetched even though I need just
>> 3 columns ? OR only 3 columns are fetched ?
>>
>
> yes and no.
>
> a row can consist of both a proper tuple in an 8K block, and toast data
> stored in toast tables. the whole block that the tuple is in will be
> read into the shared_buffers space, however, toast data thats not
> referenced will not be fetched. toast is used for larger fields that
> won't fit in a single block.
On a related note, what happens when you do something like this? -
select count(*) ....
Does any data actually get read?
Is there any difference internally to saying "count(1)" instead?
Ray.
--
Raymond O'Donnell :: Galway :: Ireland
rod(at)iol(dot)ie
From | Date | Subject | |
---|---|---|---|
Next Message | A. Kretschmer | 2010-04-16 08:23:44 | Re: Complete row is fetched ? |
Previous Message | Yeb Havinga | 2010-04-16 07:07:41 | Re: Complete row is fetched ? |