PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Existe-t-il un moyen de définir une constante nommée dans une requête PostgreSQL ?

Cette question a déjà été posée (Comment utilisez-vous les variables de script dans PostgreSQL ?). Cependant, il y a une astuce que j'utilise parfois pour les requêtes :

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

Autrement dit, je définis un CTE appelé const qui a les constantes qui y sont définies. Je peux ensuite croiser cela dans ma requête, n'importe quel nombre de fois à n'importe quel niveau. J'ai trouvé cela particulièrement utile lorsque je traite des dates et que je dois gérer des constantes de date dans de nombreuses sous-requêtes.