generate_series para datas mínimas e máximas
-
20-12-2019 - |
Pergunta
Aqui está a consulta básica que desejo realizar no banco de dados Greenplum (como postgresql 8.2.15).
O campo create_date na tabela t é carimbo de data/hora sem fuso horário.Alguém poderia me indicar a consulta correta para fazer isso?Obrigado.
select * from generate_series ((select EXTRACT (YEAR FROM MIN(t1.create_date)) from t1),(select EXTRACT (YEAR FROM MAX(t1.create_date)) from t1))
É um erro de lançamento
ERROR: function generate_series(double precision, double precision) does not exist
LINHA 1:selecione * de generate_series ((selecione EXTRACT (ANO DE MI...^ Dica:Nenhuma função corresponde ao nome e aos tipos de argumento fornecidos.Pode ser necessário adicionar conversões de tipo explícitas.
Solução
Você pode converter argumentos explicitamente para inteiros:
select *
from generate_series (
(select EXTRACT (YEAR FROM MIN(t1.create_date)) from t1)::int,
(select EXTRACT (YEAR FROM MAX(t1.create_date)) from t1)::int
)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow