On Tue, Mar 24, 2026 at 1:32 PM Kirill Reshke <[email protected]> wrote:
> On Tue, 24 Mar 2026 at 11:27, Rushabh Lathia <[email protected]> > wrote: > > > > Hi hackers, > > > > Please find the attached patch, to implement the ORDER BY ALL clause. > > Commit ef38a4d97, implemented GROUP BY ALL clause, and this > > feature follows the same pattern. > > > > ORDER BY ALL is a form of ORDER BY that automatically adds all > > non-junk columns from the SELECT target list to the ORDER BY clause. > > > > This implementation supports: > > - ORDER BY ALL (default ascending order) > > - ORDER BY ALL ASC > > - ORDER BY ALL DESC > > - ORDER BY ALL NULLS FIRST/LAST > > - ORDER BY ALL ASC/DESC NULLS FIRST/LAST > > > > The syntax works by creating a marker SortBy node with a NULL > > node pointer that carries the sort direction and nulls ordering. > > During query transformation, this marker is detected and expanded > > to order by all non-junk columns in the target list with the > > specified direction. > > > > Implementation details: > > - gram.y: Added ORDER BY ALL grammar with optional ASC/DESC and NULLS > > in both main sort_clause and PLpgSQL_Expr rules > > - parse_clause.c: Implemented ORDER BY ALL expansion logic that iterates > > over target list columns > > - analyze.c: Updated to pass orderByAll flag through transformation > > - parsenodes.h: Added orderByAll boolean to SelectStmt and Query > > - ruleutils.c: Added deparsing support for ORDER BY ALL that preserves > > sort direction and NULLS ordering in view definitions, including proper > > handling of implicit vs explicit ordering > > > > Please take a look at the attached patch and let me know your thoughts. > > > > Thanks, > > Rushabh Lathia > > www.EnterpriseDB.com > > > > Hi! What about SQL standard compatibility? ef38a4d97 was merged only > after the SQL committee accepted GROUP BY ALL, there was discussion a > few years before [0] which ended up in nothing because of SQL > standard... So I wonder what is perspective of this thread > > > [0] > https://www.postgresql.org/message-id/CAAhFRxjyTO5BHn9y1oOSEp0TtpTDTTTb7HJBNhTG%2Bi3-hXC0XQ%40mail.gmail.com Thanks a lot for sharing this. I was not aware that ORDER BY ALL is not yet part of SQL Standards (my bad). > > > -- > Best regards, > Kirill Reshke > -- Rushabh Lathia
