Re: BUG #14405: ORDER BY TABLENAME, possible bug
От | Tom Lane |
---|---|
Тема | Re: BUG #14405: ORDER BY TABLENAME, possible bug |
Дата | |
Msg-id | 27822.1477755279@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: BUG #14405: ORDER BY TABLENAME, possible bug (Francisco Olarte <folarte@peoplecall.com>) |
Список | pgsql-bugs |
Francisco Olarte <folarte@peoplecall.com> writes: > Then, I do not remember whether that's a bug or a feature, and have > not been able to see it in the docs, do not even know how to do it ( > tried some places without luck ), so someone more knowledgeable can > point us in the right direction. Yeah: really, "tablename" is a whole-row variable, and "tablename.colname" is an application of a field-selection operation to a composite value, but you're not required to perform such a selection after mentioning a whole-row variable, if it's in a context where the system can do something sensible with a composite value. Another way to say it is that "tablename" and "tablename.*" are interchangeable notations for a composite value representing the table's current row, everywhere except at the top level of a SELECT list, where the standard mandates that "*" references be burst into individual column references. I had thought this was documented someplace, but after trawling our SGML docs the closest thing I can find is the discussion in https://www.postgresql.org/docs/current/static/sql-expressions.html#FIELD-= SELECTION and that's not terribly explicit. There's also some related material in https://www.postgresql.org/docs/current/static/rowtypes.html but that doesn't seem to state this straight out either. regards, tom lane
В списке pgsql-bugs по дате отправления: