Postgresは、列エイリアスをorder by
として許可することにより、標準に準拠しています。 キー。したがって、これは機能します:
SELECT CONCAT(first_name, last_name) AS full_name
FROM customer
ORDER BY full_name;
ただし、これを式に拡張することはありません。 エイリアスを使用します。これは、サブクエリまたはCTEを使用して修正できます。横方向の結合も提案するかもしれません:
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;