Olá, Você quer ter um único for e mais de um select é isso?
for variavel in select * from tabela loop E dentro desse laço você quer ter um outro for com select ou apenas um select? []s Em 06/02/08, Rafael dos Santos Ferreira <[EMAIL PROTECTED]> escreveu: > > > > Bom dia a todos; > > > > Bueno, tenho as seguintes tabelas : > > Produto – armazena o cadastro de produtos > > Tmensais - armazena o total das saídas mensais dos produtos > > ientrada – armazena as entradas dos produtos dada > por notas fiscais > > Prodpedido – Armazena os pedidos feito dos > produtos > > > > Eu preciso fazer uma junção destas tabelas. > > > select * > select * from tmensais where tmensais. tme_codpro = ??? limit 5) > and > (select * from ientrada where ientrada. ien_codpro = ??? limit 10) > and > (select * from prodpedido where prodpedido.ppe_coditem = ??? limit 10) > from produto > > > > Um amigo do próprio fórum me passou a seguinte dica: > > ** > > CREATE OR REPLACE FUNCTION ult_n_saidas(n integer) RETURNS SETOF > > > saida AS > > > $$ > > > DECLARE > > > r_sai saida%ROWTYPE; > > > r_prod RECORD; > > > > > > BEGIN > > > FOR r_prod IN SELECT DISTINCT cod_produto from produtos order > > > by cod_produto LOOP > > > FOR r_sai IN SELECT * FROM saida > > > WHERE sai_produto = r_prod.cod_produto > > > ORDER BY sai_data DESC LIMIT n LOOP > > > RETURN NEXT r_sai; > > > END LOOP; > > > END LOOP; > > > RETURN; > > > END; > > > $$ language 'plpgsql'; > > > > A minha duvida é a seguinte, como eu faço para utilizar o operador > Rowtype se eu tiver mais de uma select dentro do for? > > > > obrigado > > > > > > CREATE TABLE "public"."produtos" ( > > "pro_codigo" SERIAL, > > "pro_descri" VARCHAR(40) NOT NULL, > > "pro_grupo" INTEGER, > > "pro_famili" INTEGER, > > "pro_codbar" VARCHAR(13), > > "pro_apelid" CHAR(17) NOT NULL, > > "pro_unidad" VARCHAR(2) NOT NULL, > > "pro_embala" INTEGER, > > "pro_pesuni" NUMERIC(10,2), > > "pro_aliicm" CHAR(2), > > "pro_tribut" CHAR(2), > > "pro_cusmed" NUMERIC(7,3), > > "pro_cusrep" NUMERIC(7,3), > > "pro_preven" NUMERIC(7,3), > > "pro_marluc" INTEGER, > > "pro_dtalpr" DATE, > > "pro_quaest" NUMERIC(9,3), > > "pro_ponped" NUMERIC(9,3), > > "pro_ordent" CHAR(1), > > ) WITHOUT OIDS; > > > > > > > > > > > > CREATE TABLE "public"."tmensais" ( > > "tme_codpro" INTEGER NOT NULL, > > "tme_data" DATE NOT NULL, > > "tme_quasai" NUMERIC(12,3), > > "tme_quaent" NUMERIC(7,3), > > "tme_cusmed" NUMERIC(7,3), > > "tme_cusrep" NUMERIC(7,3), > > "tme_preven" NUMERIC(7,3), > > "tme_marluc" INTEGER, > > "tme_quaest" NUMERIC(12,3), > > ) WITHOUT OIDS; > > > > > > CREATE TABLE "public"."mentrada" ( > > "men_refere" SERIAL, > > "men_docume" VARCHAR(10) NOT NULL, > > "men_codpro" INTEGER, > > "men_codpes" INTEGER, > > "men_data" DATE, > > "men_quanti" NUMERIC(7,3), > > "men_valuni" NUMERIC(7,3), > > "men_despes" NUMERIC(7,3), > > ) WITHOUT OIDS; > > > > > > > > CREATE TABLE "public"."ientrada" ( > > "ien_refere" SERIAL, > > "ien_entrada" INTEGER NOT NULL, > > "ien_codpro" INTEGER NOT NULL, > > "ien_quantidade" NUMERIC(10,2), > > "ien_valor" NUMERIC(10,2), > > "ien_salvar" INTEGER DEFAULT 0, > > ) WITHOUT OIDS; > > > > > > > > CREATE TABLE "public"."prodpedido" ( > > "ppe_pedido" INTEGER NOT NULL, > > "ppe_ordem" SERIAL, > > "ppe_coditem" INTEGER, > > "ppe_quantid" NUMERIC(10,2), > > "ppe_preuni" NUMERIC(10,2), > > "ppe_valipi" NUMERIC(10,2), > > ) WITHOUT OIDS; > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > -- João Paulo www.dextra.com.br/postgres PostgreSQL
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
