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

Pourquoi SELECT sans colonnes est-il valide

Directement du manuel :

La liste des expressions de sortie après SELECT peut être vide, produisant une table de résultats sans colonne. Ce n'est pas une syntaxe valide selon la norme SQL. PostgreSQL lui permet d'être cohérent avec l'autorisation des tables sans colonne. Cependant, une liste vide n'est pas autorisée lorsque DISTINCT est utilisé.

La possibilité de tables "zéro colonne" est un effet secondaire de l'héritage de table si je ne me trompe pas. Il y a eu des discussions à ce sujet sur les listes de diffusion Postgres (mais je ne les trouve pas pour le moment)