Does PostgreSQL cache all columns of a table after SELECT?

Tim Schwenke <tim@trallnag.com>

From: Tim Schwenke <tim@trallnag.com>
To: "pgsql-novice" <pgsql-novice@lists.postgresql.org>
Date: 2023-06-05T12:15:21Z
Lists: pgsql-novice
Hello,

I have the following table with the following columns:

large_a: text (few dozen characters up to a few hundred)
large_b: text (few dozen characters up to a few hundred)

The table has several million rows. The DB is running on a large machine.

I perform the following query:

select large_a from table;

The first query takes a few minutes. Afterwards I see that the cache in memory has grown. Next query only takes a few seconds.

What I want to know:

Does the cache also contain large_b? Or is only large_a cached? Assumption is that memory is large enough to fit everything.