Nelson Pereira Júnior escreveu: > Olá, > > Dentro de uma função PLPGSQL, tenho uma variável datahora. Como faço > para retornar apenas a data dessa variável, incrementando 1 mês na data, > levando em consideração que se a data for 20/12/06 deverá retornar > 20/01/07, e que se for 31/01/06 deverá retornar 28/02/06. >
Veja: http://www.postgresql.org/docs/8.1/interactive/functions-datetime.html bdteste=# SELECT current_timestamp; now ------------------------------- 2006-11-01 15:11:13.123585-03 (1 registro) bdteste=# SELECT current_timestamp::date; now ------------ 2006-11-01 (1 registro) bdteste=# SELECT current_date + interval '1 month'; ?column? --------------------- 2006-12-01 00:00:00 (1 registro) bdteste=# SELECT '2006-12-20'::date + interval '1 month'; ?column? --------------------- 2007-01-20 00:00:00 bdteste=# SELECT '2007-01-31'::date + interval '1 month'; ?column? --------------------- 2007-02-28 00:00:00 (1 registro) []s Osvaldo _______________________________________________________ O Yahoo! está de cara nova. Venha conferir! http://br.yahoo.com _______________________________________________ Grupo de Usuários do PostgreSQL no Brasil Antes de perguntar consulte o manual http://pgdocptbr.sourceforge.net/ Para editar suas opções ou sair da lista acesse a página da lista em: http://pgfoundry.org/mailman/listinfo/brasil-usuarios
