sql >> Databáze >  >> RDS >> PostgreSQL

Použití LENGTH (vypočítaný sloupec) v ORDER BY v Postgres sql

Postgres dodržuje standard tím, že povoluje aliasy sloupců jako order by klíče. Takže to funguje:

SELECT  CONCAT(first_name, last_name)  AS full_name
FROM customer
ORDER BY full_name;

Nerozšiřuje to však na výrazy pomocí aliasů. Můžete to opravit pomocí poddotazů nebo CTE. Také bych mohl navrhnout boční spojení:

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;


  1. Sloupec dotazu s datovým typem char v oracle

  2. Sečtěte výsledky několika dotazů a najděte 5 nejlepších v SQL

  3. Spouštěče SQL Server:Spouštěče DML

  4. Postgres:Aktualizujte sekvenci primárních klíčů pro všechny tabulky