user
è una funzione incorporata (e una parola chiave). Quindi non puoi davvero usarlo come nome di una tabella:
psql (10.4)
Type "help" for help.
postgres=# select user;
user
----------
postgres
(1 row)
postgres=# select * from user;
user
----------
postgres
(1 row)
E poiché è una funzione, non ha una colonna name
.
postgres=# select name from user;
ERROR: column "name" does not exist
LINE 1: select name from user;
^
postgres=#
Se qualifichi la tabella, è chiaro che non stai facendo riferimento alla funzione, ma alla tabella.
Puoi sempre qualificare il nome della tabella con lo schema o usare le virgolette:select name from "user";
o semplicemente trova un nome di tabella che non collida con le funzioni integrate.