Vamos supor que você tenha algo assim na sua tabela de respostas:
Selecionar tudo
identificacao_id respostas_descricao
------------------ ------------------------
1 resposta A
2 resposta B
3 resposta C
4 resposta D
e então, você deseja que sua consulta retorne algo do tipo:
Selecionar tudo
per_descricao resp1 resp2 resp3
---------------- ------------ ------------ -------------
pergunta1 resposta A resposta B resposta C
pergunta2 NULL resposta B resposta C
o seu select seria:
Selecionar tudo
select per.perguntas_descricao,
max(decode(resp.identificacao_id,1,resp.respostas_descricao,null)) resp1
max(decode(resp.identificacao_id,2,resp.respostas_descricao,null)) resp2
max(decode(resp.identificacao_id,3,resp.respostas_descricao,null)) resp3
from tb_form_perguntas per, tb_form_respostas resp
where per.perguntas_id = resp.identificacao_id
group by per_perguntas_descricao
order by per.perguntas_descricao
Aqui nesse exemplo estamos considerando que a resposta 1 não está cadastrada para a segunda pergunta, por isso o retorno de NULL na segunda linha[quote][/quote]