Postgres följer standarden genom att tillåta kolumnalias som order by
nycklar. Så det här fungerar:
SELECT CONCAT(first_name, last_name) AS full_name
FROM customer
ORDER BY full_name;
Det utökar dock inte detta till uttryck använder aliasen. Du kan fixa detta med hjälp av subqueries eller CTE:er. Jag kan också föreslå en lateral sammanfogning:
SELECT v.full_name
FROM customer c CROSS JOIN LATERAL
(VALUES (CONCAT(c.first_name, c.last_name))) v(full_name)
ORDER BY v.full_name;