Re: duda/problema con query y funcion

From: "Jaime Casanova" <jcasanov(at)systemguards(dot)com(dot)ec>
To: Roberto Rodríguez Pino <rodpin(at)gmail(dot)com>
Cc: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: duda/problema con query y funcion
Date: 2008-09-23 22:05:38
Message-ID: 3073cc9b0809231505u2ce4b959n24a292d89444ed28@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2008/9/22 Roberto Rodríguez Pino <rodpin(at)gmail(dot)com>:
>
> CREATE OR REPLACE FUNCTION buscandoError(fecha date)
> RETURNS void AS
> $BODY$
> DECLARE
> inv_temp record;
> BEGIN
> DELETE FROM inventariototal;
> FOR inv_temp IN
> (SELECT articulo.idarticulo, costoultimo.costoultimo
> FROM articulo
> LEFT OUTER JOIN costo USING (idarticulo)
> LEFT OUTER JOIN (select costo.idarticulo, costoultimo from
> costo,(select max(idcosto) as idcosto,idarticulo,max (fecha) from costo
> where fecha<=$1 group by idarticulo) as fechacosto where
>

el argumento de tu funcion se llama fecha al igual que una de las
columnas de una de tus tablas...
cambia el nombre del argumento, pgsql no se comporta bien cuando eso ocurre...

ademas el group by del select en la funcion no es igual al del select solo:

el select solo:
> group by articulo.idarticulo, costoultimo.costoultimo

en la funcion:
> group by articulo.idarticulo, articulo.descripcion, costoultimo.costoultimo

si eso no lo soluciona, crea tablas pequeñas con unos cuantos datos
falsos y manadalos para poder reproducir el error. yo soy muy vago
para hacer las tablas y pensar en datos basado en lo que pasaste.

--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Asesoría y desarrollo de sistemas
Guayaquil - Ecuador
Cel. +59387171157

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Roberto Rodríguez Pino 2008-09-23 22:17:47 Re: duda/problema con query y funcion
Previous Message Felipe de Jesús Molina Bravo 2008-09-23 21:21:09 off-topic postgres en minilap