Fórum Consulta SQL #191545

29/10/2003

0

Olá pessoal!

Estou tentanto montar uma consulta que traga, em tempo de execução, todos os registros de clientes com fazem aniversários em determinado período de data a critério do usuário. Acontece que quero ainda que ele ordene os registros pelo dia do aniversário do cliente.
A questão é que como este é um campo ´date´ a consulta que eu montei ordena também pelo ano, ou seja, quem nasceu 02/11/1980, no relatório está atrás de que nasceu 01/11/1981.
Trocando em miudos, quero que ordene apenas pelo dia e mês, independente do ano.
Não sei se fui claro, em todo caso aqui está o código se alguém puder me ajudar.

Grato.


select COD_CLI,NOME_CLI,
FONE, DATA_ANI
from
CLIENTES
where extract(day from DATA_ANI) >= :DIA1 and extract(month from DATA_ANI) >= :MES1 and extract(day from DATA_ANI) <= :DIA2 and extract(month from DATA_ANI) <=:MES2
order by DATA_ANI


Ildo

Ildo

Responder

Posts

29/10/2003

Felipe.palucoski

tenta isso, teoricamente funciona!!!!

Select COD_CLI,NOME_CLI,FONE,DATA_ANI from clientes where between(DATA_ANI,datainicial,datafinal)


Responder

Gostei + 0

30/10/2003

Fabio.hc

Tente assim:

select COD_CLI,NOME_CLI, FONE, DATA_ANI[color=red:7456324d89], extract(day from DATA_ANI)[/color:7456324d89]
from
CLIENTES
where extract(day from DATA_ANI) >= :DIA1 and extract(month from DATA_ANI) >= :MES1 and extract(day from DATA_ANI) <= :DIA2 and extract(month from DATA_ANI) <=:MES2
[color=red:7456324d89]order by 5[/color:7456324d89]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar