From: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
---|---|
To: | Postgresql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Fwd: 2 consultas acerca de fechas |
Date: | 2007-07-07 23:39:38 |
Message-ID: | c2d9e70e0707071639u70ce04f9w65fa4cf4e36db3f2@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
---------- Forwarded message ----------
From: Miguel Rodríguez Penabad <penabad(at)gmail(dot)com>
Date: Jul 7, 2007 5:45 PM
Subject: Re: [pgsql-es-ayuda] 2 consultas acerca de fechas
To: Jaime Casanova <systemguards(at)gmail(dot)com>
El 7/07/07, Jaime Casanova <systemguards(at)gmail(dot)com> escribió:
> On 7/7/07, Daniel Soto <daniel(dot)soto2k(at)gmail(dot)com> wrote:
> >
> > Estoy haciendo una funcion la cual obtiene unos registros que se encuentren
> > entre cierto rango de fechas, por ejemplo desde el 07-05-2007 0:00:00 hasta
> > el 20-07-2007 23:59:59. El usuario solo ingresa la fecha como tal y el
> > sistema es quien le agrega la hora (en otras bases de datos, me asumia
> > siempre hasta 20-07-2007 0:00:00 por lo que los registros que hayan sido
> > creados dentro de ese dia quedaban fuera, ya que los registros se crean con
> > fecha y hora).
> >
>
> que tal where campo_timestamp::date between fecha_ini and fecha_fin y
> te olvidas de agregar horas
>
Aparte de estar completamente de acuerdo con Jaime en el uso de date y
between, que es
lo primero que se me ocurrió al leer tu mensaje:
Por un lado, yo usaría el tipo interval para "sumar horas":
fecha_ini + interval '23:59:59'
Por otro lado, el error que obtienes
ERROR: la función inventario.mi_funcion("unknown", "unknown",
"unknown") no es única at character 8
HINT: No se pudo escoger la función más adecuada. Puede desear
agregar conversiones explícitas de tipos.
Parece indicar que has creado varias functiones
"inventario.mi_funcion" con distintos tipos de parámetros.
Supongo que mi_funcion(varchar, date, date) y mi_funcion(varchar,
timestamp, timestamp)
Para evitar el error (aparte de que supongo que solo necesitas una
función y puedes eliminar la(s) otra(s), puedes hacer la llamada así:
select mi_funcion('01', '2007/07/07'::date,'2007/07/07'::date);
o
select mi_funcion('01', date '2007/07/07',date '2007/07/07');
Así Postgres sabrá qué función ejecutar.
Saludos
Miguel
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2007-07-08 00:00:57 | Re: Presentación y petición de ayuda (phpPgAdmin) |
Previous Message | Jaime Casanova | 2007-07-07 21:22:20 | Re: Tamaño o dimension de un indice |