Tenho uma query pronta e pretendo chama-lá por linha de comando quando necessário. gostaria de alterar a variável de data pela chamada.
por exemplo:
psql -f /mnt/Download/testeMeuBanco.sql -o /mnt/Download/resultado_meu_teste.csv
gostaria de alterar duas variáveis declaradas nessa linha. pDataInicial e pDataFinal. vi artigos dizendo para usar -v.
segue a query exemplo
--Teste
DO $$
declare
pHostname varchar(100) = 'localhost';
pDataInicial timestamp(0) = '2017-07-30';
pDataFinal timestamp = '2017-08-20';
begin
DROP TABLE IF EXISTS resultado;
create temp table resultado as
SELECT a.cod as CODIGO, a.valor as VALOR, a.data as DATA, a.status as STATUS
FROM history a
WHERE a.data BETWEEN pDataInicial AND pDataFinal
GROUP BY a.cod, a.valor, a.data, a.status
ORDER BY a.valor;
end
$$ language 'plpgsql';
select * from resultado;