Es ist keine Überraschung. Die Sprache SQL unterstützt keine Variablen. Sie müssen die Sprache plpgsql verwenden.
CREATE OR REPLACE FUNCTION clean_emp()
RETURNS void AS $$
DECLARE cnt varchar;
BEGIN
END;
$$ LANGUAGE plpgsql;
Weitere Informationen finden Sie in der Dokumentation http://www.postgresql.org/docs/current /static/plpgsql.html .
PostgreSQL hat mehr Sprachen für die Schreibfunktion. Die SQL-Sprache ist perfekt für einzeilige Makros mit einzelnen Anweisungen. PLpgSQL ist eine klassische native Sprache, ähnlich wie PL/SQL von Oracle mit eingebettetem SQL.