sql >> Database teknologi >  >> RDS >> PostgreSQL

Brug af LENGTH (beregnet kolonne) i ORDER BY i Postgres sql

Postgres overholder standarden ved at tillade kolonnealiaser som order by nøgler. Så dette virker:

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

Det udvider dog ikke dette til udtryk ved at bruge aliasserne. Du kan rette dette ved at bruge underforespørgsler eller CTE'er. Jeg kan også foreslå en lateral sammenføjning:

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. Hibernate-envers kaster undtagelse ved sletning af entitet med en samling ved hjælp af CrudRepository

  2. Ikke-understøttet mulighed givet til mysql_options()

  3. Hvordan får man en liste kolonnenavne og datatyper af en tabel i PostgreSQL?

  4. Tillader Oracle muligheden for uforpligtende læsning?