Flávio, a pergunta original é minha mesmo. A função eu criei para manter
a compatibilidade entre os SGDB's que utilizamos.
Legal, veja porque top posting é ruim pra lista :)
CREATE OR REPLACE FUNCTION getdate() RETURNS timestamp without time zone
AS $BODY$
BEGIN
RETURN clock_timestamp();
END;
$BODY$
LANGUAGE plpgsql VOLATILE COST 100;
Se sim, verifique se a criou como VOLATILE. Nesse caso, o índice é
usado porque o SELECT confirma que o valor é IMMUTABLE ao
executá-lo, por outro lado, sem o sub-select, como o valor é
declarado volátil, é verificado a cada linha.
Então eu teria que alterar a função de VOLATILE para IMMUTABLE? É isso?
Você não conseguirá porque clock_timestamp também é volátil.
Chequei em outros casos, o pessoal usa now(), que é estável (não varia
no meio de uma transação).
[]s
Flavio Gurgel
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral