Boa Tarde Miltão.... Consegui resolver a parada da consulta aí:
SELECT tta.prateleira, CASE WHEN row_number() over(PARTITION BY tta.fruta_vermelha, tta.prateleira ORDER BY tta.fruta_vermelha) = 1 THEN tta.fruta_vermelha ELSE NULL END fruta_vermelha, CASE WHEN row_number() over(PARTITION BY tta.fruta_amarela, tta.prateleira ORDER BY tta.fruta_amarela) = 1 THEN tta.fruta_amarela ELSE NULL END fruta_amarela FROM (SELECT ff.prateleira, fruta_vermelha, fruta_amarela FROM feira_livre ff LEFT JOIN (SELECT (CASE WHEN ff.cor = 'Vermelha' THEN ff.prateleira END) AS prateleira, (CASE WHEN ff.cor = 'Vermelha' THEN ff.fruta END) AS fruta_vermelha FROM feira_livre ff) fv ON fv.prateleira = ff.prateleira LEFT JOIN (SELECT (CASE WHEN ff.cor = 'Amarela' THEN ff.prateleira END) AS prateleira, (CASE WHEN ff.cor = 'Amarela' THEN ff.fruta END) AS fruta_amarela FROM feira_livre ff) fa ON fa.prateleira = ff.prateleira GROUP BY ff.prateleira, fruta_vermelha, fruta_amarela) tta Em 5 de outubro de 2015 07:43, Ricardo Tajiri rhtaj...@gmail.com [oracle_br] <oracle_br@yahoogrupos.com.br> escreveu: > > > Estou sem Oracle aqui, então sem jeito pra testar... Mas eu brincaria com > o row_number(). Algo do tipo: > > select NVL(v.prateleira,a.prateleira), v.fruta, a.fruta from > (select prateleira, fruta, cor, row_number() over (partition by prateleira > order by fruta) rn > from feira_livre where cor = 'Vermelha') v > full outer join > (select prateleira, fruta, cor, row_number() over (partition by prateleira > order by fruta) rn > from feira_livre where cor = 'Amarela') a on v.prateleira = a.prateleira > and v.rn = a.rn; > > > > > Ricardo Hideyuki Tajiri > > Em 2 de outubro de 2015 21:40, 'Schiavini' et...@schiavini.inf.br > [oracle_br] <oracle_br@yahoogrupos.com.br> escreveu: > >> >> >> Se a quantidade de cores for predefinida, use pivot. >> >> Étore >> >> From: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] >> Sent: sexta-feira, 2 de outubro de 2015 16:17 >> To: oracle_br@yahoogrupos.com.br >> Subject: [oracle_br] Dúvida SQL - Select >> >> Boa tarde amigos! >> >> Dados hipotéticos: >> >> select prateleira, fruta, cor from feira_livre; >> >> Prateleira Fruta Cor >> >> 1 Maçã Vermelha >> >> 2 Cereja Vermelha >> >> 1 Banana Amarela >> >> 2 Mamão Amarela >> >> 1 Morango Vermelha >> >> É possível eu montar um Select que me traga esse resultado? >> >> Prateleira Fruta_Vermelha Fruta_Amarela >> >> 1 Maçã Banana >> >> 1 Morango >> >> 2 Cereja Mamão >> >> Ou seja: juntei 2 frutas de cores diferentes no mesmo registro, por serem >> >> da mesma prateleira, mas elas não tem mais nenhuma relação entre si; >> >> Como tinham 2 vermelhas na mesma prateleira, eu joguei pro registro de >> baixo. >> >> Se tivesse uma segunda fruta amarela na prateleira 1, ela também iria pro >> segundo registro. >> >> Att, >> >> Image removed by sender. >> >> [As partes desta mensagem que não continham texto foram removidas] >> >> > >