[Pgsql-ayuda] Consulta sobre fechas

Manuel Sugawara masm@fciencias.unam.mx
25 Nov 2001 20:50:08 -0600


Ricardo  Ignacio Mercado Araneda <rmercado@dportales.cl> writes:

> Hola,
> Como convierto el string('31/01/2001') a tipo fecha?

Usa el operador ::tipo para la conversi=F3n. Con esta fecha en
particular lo puedes hacer directo:

regress=3D# select '31/01/2001'::date;
    date
------------
 2001-01-31
(1 row)

Ok (formato ISO a=F1o y mileno-mes-d=EDa); pero fijate que no funciona en
general, por ejemplo:

regress=3D# select '04/02/2001'::date;
    date
------------
 2001-04-02
(1 row)

Ups, mes=3D4 d=EDa=3D2 y a=F1o=3D2001!!, para evitar que postgres resuelva
los primeros dos d=EDgitos, en caso ambiguos como mes (formato USA)
puedes usar el comando set DateStyle to 'European', o usar el formato
ISO=20

regress=3D# select '2001-02-04'::date;
    date
------------
 2001-04-02
(1 row)

regress=3D# set DateStyle to 'European';
SET VARIABLE
regress=3D# select '04/02/2001'::date;
    date
------------
 2001-04-02
(1 row)

Saludos,
Manuel.