• "If you mean ..."

    All I mean is that if you allow "SELECT *" then you should make it always behave like "SELECT *" and not just when you are lucky.

    I know that optimisation can be very hard and tricky. But it is no excuse to justify breaking the functionality.

    And I wonder if the people who do not consider this a bug (but a "feature") would think the same way about it if SQL Server would always evaluate "SELECT *" based on the current schema definition while Oracle would break the same way as SQL Server does now... and what does the SQL standard say anyway?