2012/8/29 Matheus de Oliveira <matioli.math...@gmail.com>:
>
>
> Osvaldo, na verdade é sim, veja que se usar `ORDER BY date_trunc('month',
> a.dt_mov);` apenas o mês será considerado na ordenação, logo todo mês de
> Junho (inteiro 6), por exemplo, vai ficar junto independente do ano que seja
> (2011, 2012, etc.), porque o ano não foi considerado. Logo a ordenação tem
> que considerar o mês e o ano, sendo que o ano deve vir antes (ou o mesmo
> problema acontecerá), e temos, é claro, várias formas de fazer isso, como:
>

Alguém me corrija se eu estiver errado, mas o date_trunc('month',
a.dt_mov) irá truncar a data para o primeiro dia do mês, sendo assim,
mês e ano seriam considerados na ordenação.

SELECT date_trunc('month', d.d)
FROM (VALUES ('01/03/2012'::date), ('01/04/2010'), ('01/04/2012'),
('01/02/2012')) d(d)
ORDER BY date_trunc('month', d.d);

       date_trunc
------------------------
 2010-04-01 00:00:00-03
 2012-02-01 00:00:00-03
 2012-03-01 00:00:00-03
 2012-04-01 00:00:00-03
(4 registros)
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a