Olá Osvaldo, Na minha subquery eu quero que conste as datas de aniversário com o mês maior ou igual ao mês atual, e a partir daí (na minha query principal), eu quero que apenas as datas do resultado da minha subquery mostrem aquelas que possuem o dia maior ou igual ao dia atual, ordenando o resultado final por mês e dia.
Vou tentar a solução apresnetada pelo Fabrizio *SELECT nome, aniversario FROM clientes WHERE extract(MONTH from aniversario) > extract(MONTH from now()) OR (extract(MONTH from aniversario) = extract(MONTH from now()) AND extract(DAY from aniversario) >= extract(DAY from now())) ORDER BY extract(MONTH from aniversario), extract(DAY from aniversario) * e ver se consigo o resultado esperado. Valeu Galera! Em 19 de agosto de 2012 23:00, Osvaldo Kussama <osvaldo.kuss...@gmail.com>escreveu: > Em 19/08/12, Ramiro Pamponet<roli...@oi.com.br> escreveu: > > E seu eu fizesse uso de subqueryes do tipo: > > > ----------------------------------------------------------------------------------------------------------------------------- > > select nome, aniversario from clientes > > where extract(DAY from aniversario) >= extract(DAY from now()) > > in > > (select nome, aniversario from clientes > > where extract(MONTH from aniversario) >= extract(MONTH from now())) > > order by extract(MONTH from aniversario), extract(DAY from aniversario) > > > ----------------------------------------------------------------------------------------------------------------------------- > > mas com um pequeno detalhe, essa consulta me retorno o seguinte erro: > > > ----------------------------------------------------------------------------------------------------------------------------- > > ERRO: subconsulta tem muitas colunas > > LINE 3: in > > ^ > > ********** Error ********** > > ERRO: subconsulta tem muitas colunas > > SQL state: 42601 > > Character: 103 > > > ----------------------------------------------------------------------------------------------------------------------------- > > Sendo que a quantidade de colunas nas duas consultas é a mesma, 2 (nome e > > aniversario). Onde estou errando? > > > > Era para fazer a consulta por mês e depois a partir do resultado dessa > > consulta fazer outra por dia, e por fim ordenar por mês e dia. > > > > Caso não seja possível, vou começar a pensar na possibilidade de > utilizar a > > função to_char (aniversario, 'MMDD'), que já andei lendo que pode ser > > descontinuada nas próximas versões do PostgreSQL. Valeu Galera e Um > Grande > > Abraço a Todos! > > > > Não consegui ver sentido em sua cláusula IN. > O que você deseja que conste do resultado de sua sub-query? > > Osvaldo > > Obs.: Aonde você leu que a função to_char será descontinuada? > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral