Это не то, что делает PostgreSQL. Демонстрация:
postgres=# create view view_name as select 1;
CREATE VIEW
postgres=# drop view if exists view_name;
DROP VIEW
postgres=# \echo :SERVER_VERSION_NUM
110002
postgres=# drop view if exists view_name;
NOTICE: view "view_name" does not exist, skipping
DROP VIEW
Возможно, вы используете не сам PostgreSQL, а скорее вилку с другим синтаксисом для этой операции. Проверьте результат SELECT version();
.