Só ordena, no ano atual veja como aparece: 3/2012 4/2010 4/2012 5/2012 6/2011 6/2012 7/2012 8/2012
2012/8/22 Osvaldo Kussama <[email protected]> > Em 22/08/12, Tiago Adami<[email protected]> escreveu: > > Em 22 de agosto de 2012 00:05, Matheus de Oliveira > > <[email protected]> escreveu: > >> > >> Em 21/08/2012 21:27, "Edson - Listas" <[email protected]> escreveu: > >> > >> > >>> > >>> Olá Pessoal, > >>> > >>> Como extrair o mês e ano em um campo data no PostgreSql? > >>> Exemplo: (08/2012) > >>> > >>> Extrair só a data eu consegui... > >>> > >>> select EXTRACT(MONTH from a.dt_mov) mes,sum(a.vlr_final)total > >>> from movdirhe a > >>> where a.dt_mov between '01/01/2010' and '21/08/2012' > >>> > >>> group by EXTRACT(MONTH from a.dt_mov) > >>> > >>> order by mes asc > >>> > >>> Edson > >>> > >> > >> Dê uma olhada na função to_char. > > > > Resumindo pelo exemplo: > > > > SELECT LTRIM(TO_CHAR( EXTRACT(MONTH FROM a.dt_mov), '00' )) || '/' || > > LTRIM(TO_CHAR( EXTRACT(YEAR FROM a.dt_mov), '0000' )) AS MES_ANO > > > > NOTAS: > > * Não sei se era a sua dúvida, mas valores texto não são 'somados' e > > sim 'concatenados' com o operador 'pipe-pipe' = || > > * Se você não está limitando sua consulta a um intervalo dentro de > > apenas 1 ano, ordenar somente por mês não trará a ordem cronológica > > exata. O correto seria ordenar por ano e mês nesta ordem, ou > > simplesmente pelo campo 'a.dt_mov'. > > > > > Mas neste caso não fica mais simples fazer: > > SELECT to_char(a.dt_mov, 'MM/YYYY') mes_ano, sum(a.vlr_final) total > FROM movdirhe a > WHERE a.dt_mov between '01/01/2010' and '21/08/2012' > GROUP BY date_trunc('month', a.dt_mov) > ORDER BY date_trunc('month', a.dt_mov); > > ou algo parecido? > > Osvaldo > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
