Oii, Felipe! Como vai? 
Esse erro ocorreu porque no PostgreSql a sintaxe é um pouco diferente e pode retornar erros como este. 
Veja abaixo um exemplo de código que podemos testar:
create trigger CalculaFaturamentodiario
after insert on itens_pedidos
for each row
execute procedure calcula_faturamento_diario();
create or replace function calcula_faturamento_diario()
returns trigger as $$
BEGIN
    delete from faturamento_diario;
    insert into faturamento_diario (dia, faturamentototal)
    select date(p.data_hora_pedido) as dia, sum(ip.preco_unitario) as FaturamentoDiario
    from pedidos as p
    join itens_pedidos as ip
    on p.id_pedido = ip.id_pedido
    group by dia
    order by dia;
    return NEW;
END;
$$ LANGUAGE plpgsql;
O exemplo acima cria um trigger que, após a inserção de um item na tabela itens_pedidos, executa uma função chamada calcula_faturamento_diario(). A função limpa os dados da tabela faturamento_diario e a preenche com o faturamento diário total, calculado a partir da soma dos preços unitários dos itens pedidos, agrupados por dia.
Segue alguns links para te auxiliar nos estudos sobre a sintaxe no PostgreSQL. 
As páginas estão em inglês, caso não tenha familiaridade, clique com o botão direito do mouse em qualquer canto da página e selecione traduzir para o português. 
Espero ter ajudado. Continue estudando e praticando as atividades para se desenvolver. 
Até mais, Felipe!