On Wed, Jun 28, 2017 at 11:52 PM, Thomas Munro <thomas.mu...@enterprisedb.com> wrote: > I am aware of at three potential projects that would change the > meaning of "SELECT *": > > 1. Incremental MATERIALIZED VIEW maintenance probably needs to be > able to use a hidden counter column which you can ask for by name but > will otherwise not show up to users: > > https://www.postgresql.org/message-id/1371480075.55528.yahoomail...@web162901.mail.bf1.yahoo.com > > 2. SQL:2011 temporal tables track system time and/or valid time with > columns that users create and then declare to be temporal control > columns. I don't think they show up unless you name them directly (I > didn't check the standard but I noticed that it's that way in another > product), so I guess that's basically the same as (1). > > 3. Logical column order aka ALTER COLUMN POSITION, a recurring topic > on pgsql-hackers for which patches have been written but nothing has > so far managed to stick: > > https://www.postgresql.org/message-id/flat/20141209174146.GP1768%40alvh.no-ip.org > > Suppose someone wanted to chip away at a small piece of incremental > matviews by inventing a way to declare 'hidden' columns: is there > really a dependency here as implied in the 2013 email above? Is > anyone planning to revive logical column order?
If someone were planning to revive logical column order, adding say a column attdisplaypos which controlled how an asterisk in the target list is expanded, then it would seem to make sense to use attdisplaypos = 0, say, to mean "don't *-expand this column at all". Of course, somebody could also propose to add attisdisplayed as a Boolean column and refactor all the code that currently uses attnum for that purpose to rely on attisdisplayed instead. That code would then presumably get refactored again if attdisplaypos ever showed up, but probably the second refactoring would be pretty easy. The really hard part here is probably finding all of the places that are relying on attnum < 0 as a proxy for whether the column should be displayed. BTW, if we get either of these things, can I vote for, as a follow-on patch, changing OID columns to be displayed by default, at least in system catalogs? I don't think that having the primary keys of our system catalogs as a hidden column is particularly user-friendly. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (firstname.lastname@example.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers