ORDENACAO DE CAMPO
Ola Amigos
Tenho uma Query onde a ordeno por mes e dia.Trata-se da data de aniversario.
Eu gostaria de ter duas ordenacoes,ou seja, depois de ordenar por por mes e dia, gostaria de pegar essa ordenacao e ordenar por ano.
Dessa forma eu teria a data de aniversario ordenada por dia/mes e a seguir por ano.Eu nao posso simplesmente ordenar pela data de aniversario, pois nao eria o resultado que desejo.
No crystal usando formulas, eu consegui resolver esse problema mas no VB6, ficou dificil.
Obrigado e um Abraço
Tenho uma Query onde a ordeno por mes e dia.Trata-se da data de aniversario.
Eu gostaria de ter duas ordenacoes,ou seja, depois de ordenar por por mes e dia, gostaria de pegar essa ordenacao e ordenar por ano.
Dessa forma eu teria a data de aniversario ordenada por dia/mes e a seguir por ano.Eu nao posso simplesmente ordenar pela data de aniversario, pois nao eria o resultado que desejo.
No crystal usando formulas, eu consegui resolver esse problema mas no VB6, ficou dificil.
Obrigado e um Abraço
Não entendi muito bem mais com between não da certo?
Tente da seguinte forma:
Select * from TABELA order by MONTH(DATA),DAY(DATA),YEAR(DATA)
Qual é o resultado que você quer? Mostrar os aniversários do dia e em ordem de IDADE?
Select * from TABELA order by MONTH(DATA),DAY(DATA),YEAR(DATA)
Qual é o resultado que você quer? Mostrar os aniversários do dia e em ordem de IDADE?
Muito obrigado pela ajuda amigos
Eu tenho as seguintes datas de aniversario:
01/01/1960
01/01/1950
01/01/1980
01/01/2000
01/01/2010
02/01/1970
02/02/1955
03/05/1985
Como sao datas de aniversario, nao basta apenas ordena-las pela data, pois eu quero que seja feito dessa forma.
01/01/1950
01/01/1960
01/01/1980
01/01/2000
02/01/1970
02/02/1955
03/05/1985
Meu objetivo e exibir na tela todas as datas de aniversario ordenadas mas nao por data e sim em primeiro momento por dia/mes e dentro dessa ordenacao ordenar tambem por ano, como fiz acima.Acima pode ser visto o dia e data de 01/01, com os anos de 1950,1960,1980 e 2000, ordenadas dentro dia dia/mes.
Logicamente eu tenho varias datas com mesmo dia/mes e com anos diferentes.E esse tido de ordenacao que eu quero.
Sera que agora deu para entender?
Obrigado e um Abraço
Eu tenho as seguintes datas de aniversario:
01/01/1960
01/01/1950
01/01/1980
01/01/2000
01/01/2010
02/01/1970
02/02/1955
03/05/1985
Como sao datas de aniversario, nao basta apenas ordena-las pela data, pois eu quero que seja feito dessa forma.
01/01/1950
01/01/1960
01/01/1980
01/01/2000
02/01/1970
02/02/1955
03/05/1985
Meu objetivo e exibir na tela todas as datas de aniversario ordenadas mas nao por data e sim em primeiro momento por dia/mes e dentro dessa ordenacao ordenar tambem por ano, como fiz acima.Acima pode ser visto o dia e data de 01/01, com os anos de 1950,1960,1980 e 2000, ordenadas dentro dia dia/mes.
Logicamente eu tenho varias datas com mesmo dia/mes e com anos diferentes.E esse tido de ordenacao que eu quero.
Sera que agora deu para entender?
Obrigado e um Abraço
Ao invés de usar o campo com o tipo de dado DATA, mude o tipo para STRING (VARCHAR, CHARACTER VARYING,...) daà a ordenação se dará consederando que o texto escrito é uma String e não uma Data.
Mas preste atenção: se o objetivo é primeiro ordenar por DIA/MÊS, uma data do tipo 06/01/2010 aparecerá depois de, por exemplo, 03/05/2010, já que os caracteres 06 são [Ô]maiores[Ô] que os caracteres 03. Caso queira que a ordenação comece pelo mês, troque a ordem DIA/MÊS por MÊS/DIA.
Se tiver dúvida, escreva!
Alexandre
Mas preste atenção: se o objetivo é primeiro ordenar por DIA/MÊS, uma data do tipo 06/01/2010 aparecerá depois de, por exemplo, 03/05/2010, já que os caracteres 06 são [Ô]maiores[Ô] que os caracteres 03. Caso queira que a ordenação comece pelo mês, troque a ordem DIA/MÊS por MÊS/DIA.
Se tiver dúvida, escreva!
Alexandre
Citação::
Tente da seguinte forma:
Select * from TABELA order by MONTH(DATA),DAY(DATA),YEAR(DATA)
Qual é o resultado que você quer? Mostrar os aniversários do dia e em ordem de IDADE?
Deu pra entender. A solução acima não funcionou?
Tópico encerrado , respostas não são mais permitidas