Em 19 de abril de 2011 11:21, Osvaldo Kussama
<[email protected]>escreveu:

> Em 19/04/11, André Ormenese<[email protected]> escreveu:
> > Bom dia a todos.
> >
> > Pessoal, estou querendo fazer uma busca por aproximação de datas.
> >
> > Eu preciso saber, em uma tabela de resultados de exames, por exemplo,
> qual é
> > o resultado de exame mais próximo de uma determinada data.
> >
> > Tentei através da função age, ou mesmo pelo subtração do resultado de
> exame
> > pela data desejada, mas não consigo obter um resultado ordenado de forma
> > satisfatória. Gostaria que a primeira linha no retorno do sql, fosse a
> data
> > que mais se aproxima da data passada como parametro.
> >
> > Alguém tem alguma sugestão ???
> >
> >
> > SELECT to_number(to_char((data_resultado -
> > '2009-11-10'),'DD'),'99999999999') as diferenca, Exames_Soro.*,
> > Hospital.Descricao
> > FROM Exames_Soro
> > INNER JOIN Hospital ON Exames_Soro.Hosp_Requisitante =
> > Hospital.Cod_Hospital
> > WHERE Codigo_Interno = 94 and data_resultado is not null
> > ORDER BY diferenca DESC
> >
> >
> > SELECT age(data_resultado, '2009-11-10') as diferenca, Exames_Soro.*,
> > Hospital.Descricao
> > FROM Exames_Soro
> > INNER JOIN Hospital ON Exames_Soro.Hosp_Requisitante =
> > Hospital.Cod_Hospital
> > WHERE Codigo_Interno = 94 and data_resultado is not null
> > ORDER BY diferenca DESC
> >
>
>
> Tente:
>
> SELECT (CASE WHEN ('2009-11-10'::date > data_resultado) THEN
> age(data_resultado, '2009-11-10'::date) ELSE
> age('2009-11-10'::date,data_resultado) END) as diferenca,
> Exames_Soro.*, Hospital.Descricao
> FROM Exames_Soro
> INNER JOIN Hospital ON Exames_Soro.Hosp_Requisitante =
> Hospital.Cod_Hospital
> WHERE Codigo_Interno = 94 and data_resultado is not null
> ORDER BY diferenca ASC;
>
> Acrescente LIMIT 1 se desejar apenas o primeiro.
>
> Osvaldo
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>


Valeu Osvaldo !!! Perfeito....
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a