Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fellipe Antonio

Consultar dois itens na mesma tabela

Recommended Posts

Amigos, a situação é a seguinte: tenho uma tabela que basicamente possui estas características:

ITEM_CONFIGURACAO

*ID_IC

NOME_IC

ID_IC_PAI

Preciso saber como faço uma consulta que exiba o nome do pai através do campo ID_IC_PAI, sendo que este campo está taxado como apenas mais um atributo da tabela sem ser chave estrangeira.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Join na mesma tabela

 

Select a.*

From itens a,itens b

Where a.id_ic_pai = b.id_ic

Compartilhar este post


Link para o post
Compartilhar em outros sites
Caro amigo Motta, acho que não fui tão claro ao explicar o que eu queria ou então é que meus conhecimentos são muito mínimos em MySQL, mas queria algo assim:


>>>>>>>>>>>>>>>>>>>TABELA_PESSOA<<<<<<<<<<<<<<<<<


*ID_PESSOA | CPF | NOME_PESSOA | ID_PAI

1 12564378985 MARCIO NULL (0)

2 12345678989 JOÃO 1

3 12342123129 PEDRO 1


COMO FAÇO PARA OBTER NUMA ÚNICA CONSULTA O SEGUINTE RESULTADO:



NOME_PESSOA CPF NOME_PESSOA (PAI)

JOÃO 12345678989 MARCIO

PEDRO 12342123129 MARCIO

MARCIO 12564378985 0


Ou seja, preciso emitir uma consulta que apresente quem é o pai de quem e o cpf do filho.

Desculpe por minha ignorância, caso seja possível, detalhe a consulta e sua explicação o máximo que puder, obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Select a.NOME_IC nomepessoa , a.id_ic cpf , b.NOME_IC nomepai

From ITEM_CONFIGURACAO a,ITEM_CONFIGURACAO b

Where a.id_ic_pai = b.id_ic

a tabela faz join com ela mesma pelo auto-relacionamento

id_ic_pai x id_ic

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, não entendi muito bem da forma que você me explicou, e queria que, por favor, você postasse a consulta em relação à segunda postagem minha, esqueça a primeira, vou mandar ela aqui de volta.

(nome da tabela)

 

>>>>>>>>>>>>>>>>>>>PESSOA<<<<<<<<<<<<<<<<<
*ID_PESSOA | CPF | NOME_PESSOA | ID_PAI
1 12564378985 MARCIO NULL (0)
2 12345678989 JOÃO 1
3 12342123129 PEDRO 1
COMO FAÇO PARA OBTER NUMA ÚNICA CONSULTA O SEGUINTE RESULTADO:
NOME_PESSOA CPF NOME_PESSOA (PAI)
JOÃO 12345678989 MARCIO
PEDRO 12342123129 MARCIO
MARCIO 12564378985 0
Ou seja, exibir essas três linhas, pois existem três pessoas cadastradas no banco, aí na hora de exibi-las, eu preciso exibir quem é pai de quem, mesmo que o valor do pai seja nulo, eu preciso exibir que ele não tem pai (0).


Amigos, para ajudar na disseminação do conhecimento a consulta, graças ao nosso amigo Motta ficou da seguinte maneira:
SELECT PAI.NOME, FILHO.NOME
FROM NOME AS FILHO
INNER JOIN NOME AS PAI
ON FILHO.ID_PAI=PAI.ID_ID_PESSOA;
Muito obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.