problema con inner joiny tablas temporales

From: "guillermo arias" <guillermoariast(at)linuxwaves(dot)com>
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: problema con inner joiny tablas temporales
Date: 2007-06-13 21:56:45
Message-ID: 20070613145645.22A1B79D@resin15.mta.everyone.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

<DIV style="font-family:Arial, sans-serif; font-size:10pt;"><FONT size="2"><SPAN style="font-family: Arial,sans-serif;">Hola gente, tengo un problema que no he resuelto:<BR><BR>Tengo 2 tablas: ARTICULOS y EXISTENCIAS<BR><BR>articulos <BR>CREATE TABLE public.articulos<BR>(<BR>&nbsp; art_cod character varying(5) NOT NULL DEFAULT ''::character varying,<BR>&nbsp; art_descri character varying(20) DEFAULT ''::character varying,<BR>&nbsp; CONSTRAINT articulos_pkey PRIMARY KEY (art_cod)<BR>) <BR><BR>"1";"clavos"<BR>"2";"martillos"<BR>"3";"madera"<BR><BR>existencias <BR>CREATE TABLE public.existencias<BR>(<BR>&nbsp; art_cod character varying(5) DEFAULT ''::character varying,<BR>&nbsp; exis_ubic character varying(20) DEFAULT ''::character varying,<BR>&nbsp; exis_cant numeric(8) DEFAULT 0<BR>) <BR><BR>"1";"lima";100<BR>"1";"ica";130<BR>"2";"ica";1390<BR>"3";"pisco";390<BR>"3";"piura";20<BR><BR>Y una función que simplemente debe relacionar ambas tablas y darme un listado de<BR>los artículos con el detalle de su ubicación y cantidad.<BR>Lo que hago en la función es primero cargar dos tablas temporales y luego <BR>el inner join. Se que mejor sería el inner join directamente, pero quiero saber<BR>por qu&eacute; no funciona de esta manera, si en el MS sql server siempre me ha funcionado<BR>bien.<BR><BR><BR>CREATE OR REPLACE FUNCTION public.test1 (out art_cod varchar,out art_descri varchar, <BR>out exis_ubic varchar, out exis_cant numeric) returns setof record as<BR>$body$<BR><BR>select * into temp table t_arti from public.articulos;<BR>select * into temp table t_exis from public.existencias;<BR><BR>select a.art_cod,a.art_descri,e.exis_ubic,e.exis_cant<BR>from t_arti a inner join t_exis e on a.art_cod= e.art_cod;<BR>$body$<BR>&nbsp;LANGUAGE 'sql' VOLATILE;<BR><BR><BR><BR>Cuando llamo a la función con esta línea:<BR><BR>select * from modelo.test1()<BR><BR><BR>Aparece este error:<BR><BR>ERROR: relation "t_arti" does not exist<BR>SQL state: 42P01<BR>Context: SQL function "test1"<BR><BR><BR>¿Por qu&eacute; no funciona con las tablas temporales??????<BR><BR>Gracias por su ayuda</SPAN></FONT><BR>&nbsp;<BR><HR>Get your FREE, LinuxWaves.com Email Now! --&gt; http://www.LinuxWaves.com<BR>Join Linux Discussions! --&gt; http://Community.LinuxWaves.com</DIV>

Attachment Content-Type Size
unknown_filename text/html 2.2 KB

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gabriel Hermes Colina Zambra 2007-06-13 22:54:48 Re: Almacenamiento de imagenes en PostgreSQL 8.2.4
Previous Message Raul Andres Duque 2007-06-13 21:40:40 Levantar CLUSTER inicializado con INITDB (windows)