Langsung dari manual:
Daftar ekspresi keluaran setelah
SELECT
bisa kosong, menghasilkan tabel hasil kolom nol. Ini bukan sintaks yang valid menurut standar SQL. PostgreSQL memungkinkannya untuk konsisten dengan mengizinkan tabel kolom nol. Namun, daftar kosong tidak diperbolehkan saatDISTINCT
digunakan.
Kemungkinan tabel "nol-kolom" adalah efek samping dari pewarisan tabel jika saya tidak salah. Ada diskusi tentang ini di milis Postgres (tetapi saya tidak dapat menemukannya sekarang)