Em 19 de fevereiro de 2016 09:45, Osvaldo Kussama <[email protected] > escreveu:
> Em 18/02/16, André Ormenese<[email protected]> escreveu: > > Boa tarde pessoal. > > > > Vou dar um exemplo de consulta em cross-tab que gostaria de fazer, e > vejam > > se é possível. > > > > Tenho duas tabelas, uma com código e descrição de produtos do sangue, e > > outra que armazena os dados de resultados de bolsas de sangue fracionada. > > > > Uma bolsa fracionada pode gerar um ou mais produtos. > > > > A tabela1 tem os dados : > > (código, descrição) > > 1 - Hemacia > > 2 - Plaqueta > > 3 - Plasma > > > > A tabela2 o fracionamento de cada bolsa de sangue : > > (bolsa, produto, qtdade) > > b1 1 100 > > b1 2 135 > > b1 3 150 > > b2 1 200 > > b2 3 167 > > > > Queria fazer uma consulta que me mostrasse os produtos na coluna correta > do > > cross-tab, assim : > > > > Bolsa Hemacia Plaqueta Plasma > > b1 100 135 150 > > b2 200 167 > > > > Só consigo este resultado : > > Bolsa Hemacia Plaqueta Plasma > > b1 100 135 150 > > b2 200 167 > > > > > > Estou executando : > > > > Select * from crosstab ( > > 'select bolsa,produto,qtdade from fraciona > > inner join tproduto on tproduto.codigo = fraciona.produto > > order by bolsa') as resultado("Bolsa","Hemacia","Plaqueta","Plasma"); > > > > A solução é fazer que a consulta interna do cross-tab gere uma linha > assim > > : > > b2 2 null > > > > Já tentei com right join mas não funcionou. > > > > Alguma ideia ? > > > > Me parece que você deveria utilizar LEFT OUTER JOIN. > > Osvaldo, também não rolou !!! Obrigado.
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
