Omylem jste vytvořili název sloupce s mezerou na konci a pravděpodobně phpPGadmin vytvořil název sloupce s dvojitými uvozovkami:
create table your_table (
"foo " -- ...
)
To by vám dalo sloupec, který vypadal, jako by se jmenoval foo
všude, ale museli byste jej uvozovat dvakrát a zahrnout mezeru, kdykoli jej použijete:
select ... from your_table where "foo " is not null
Nejlepším postupem je používat v PostgreSQL názvy sloupců neuvedené malými písmeny. Někde by mělo být nastavení v phpPGadmin, které mu řekne, aby neuváděl identifikátory (jako jsou názvy tabulek a sloupců), ale bohužel, já phpPGadmin nepoužívám, takže nevím, kde toto nastavení je (nebo i když existuje).