CREATE FUNCTION update_customer_last_sale() RETURNS TRIGGER AS $$
BEGIN
UPDATE customer SET last_sale=now() WHERE cutomer_id=NEW.customer_id;
RETURN NEW;
END; $$
LANGUAGE plpgsql;
então
CREATE TRIGGER update_last_sale
BEFORE INSERT ON sale
FOR EACH ROW EXECUTE update_customer_last_sale;
NEW
é a linha que está prestes a ser inserida na tabela de venda. (Para uma linha de atualização, seria NEW
para saber como a linha ficará após a atualização e OLD
para ver como a linha fica antes da atualização).