SQL que mostra pai numa linha e os filhos numa outra linha

4 respostas
C

[color=red]Boa noite preciso muito da ajuda de voces,

Eu gostaria de saber como faço para listar numa mesma consulta o pai com o seus respectivos filhos.(Formato de arvore)

Ex:
Tabela Pai
id nome
1 Carlos
2 Eduardo

Tabela Filho
id NOME idPai
1 Maira 1
2 Joelson 2
3 Marta 1
4 Paula 1

Na hora da consulta deve me trazer o seguinte resultado:

Carlos ****
            maira
            marta
            paula
Eduardo *****
            Paula
[/color]

4 Respostas

C

voce deve fazer uma consulta de todos os filhos… e ordenalas pelo pai…

resumindo… faz um select dos filhos… que inclua o nome do pai e lista ordenando pelo nome do pai… acredito q essa seja uma das formas… ou a unica ^^

D

Tesnte assim:

SELECT Pai.nome, Filho.nome FROM Pai INNER JOIN Filho on Pai.id = Filho.IdPai

Ele vai retornar assim

Carlos maira
Carlos marta
Carlos paula
Eduardo Paula

Agora, este tal modo de árvore, acho que só usando alguma linguagem de programação para tratar.

L

Cara, você pode fazer uma function em PL-SQL que receba o pai, e liste os filhos…
A ideia é:

Cria um SQL que lista os pais, e a cada pai, você chama a function que seleciona os filhos… se você puder utilizar PL-SQL nesse caso, isso resolve.

Ja fiz algo para um relatório, que me lembro bem, foi assim… mas, listar produtos de uma venda.

Qualquer coisa estamos ai

Abs

C

Obrigado leonhard32 sua explicação me deu uma idéia e consegui implementar.

Abs

Criado 20 de agosto de 2011
Ultima resposta 21 de ago. de 2011
Respostas 4
Participantes 4