When I think about using order by in a select statement, e.g.
select id, name, price from stuff order by name;
I think of order by as an operator sorting data returned by the select statement.
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?