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

Er der en måde at definere en navngivet konstant i en PostgreSQL-forespørgsel?

Dette spørgsmål er blevet stillet før (Hvordan bruger du scriptvariabler i PostgreSQL?). Der er dog et trick, som jeg nogle gange bruger til forespørgsler:

with const as (
    select 1 as val
)
select . . .
from const cross join
     <more tables>

Det vil sige, jeg definerer en CTE kaldet const, der har konstanterne defineret der. Jeg kan derefter krydsføje dette i min forespørgsel, et vilkårligt antal gange på ethvert niveau. Jeg har fundet dette særligt nyttigt, når jeg har med datoer at gøre og skal håndtere datokonstanter på tværs af mange underforespørgsler.



  1. Sådan opretter du en Amazon Aurora-klynge

  2. Forståelse af beskidt læseproblem med SQL Server

  3. Sådan bruger du IF/ELSE-sætningen til at opdatere eller oprette ny xml-nodeindgang i Sql

  4. SQL Rekursiv CTE:Finder objekter forbundet med egenskaber