When I think about order by in an aggregate statement, e.g.select string_agg(product, ' | ' order by product) from products;is it correct to think of order by as a parameter passed to string_agg?
For a user it's simply the order that rows are passed into the function. If the state transition aspect retains order this is how you can control it. The function itself doesn't really ever see the parameter, it just sees ordered data.
David J.