Ir para conteúdo

POWERED BY:

Arquivado

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

DouGuAra

Inner Joins com 3 ou mais tabelas

Recommended Posts

Galera, fazer um inner join com 2 tabelas eu sei. Mas fazer com 3 tabelas eu não consigo. Segue abaixo o erro. Se alguêm poder me ajudar eu agradeço.

 

Abraços.....

 

 

ASP

[*]strSQL "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai,

 

[*]filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho 

 

[*]from pai INNER JOIN filho 

 

[*]ON pai.cod_pai = filho.cod_pai 

 

[*]INNER JOIN Nota 

 

[*]ON filho.cod_filho = nota.cod_filho" 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Douglas, tente incluíndo parênteses no seu SQL...se não funcionar verifique o nome dos campos e tabelas para ver se está tudo certo.

 

ASP

[*]strSQL "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai," & _

 

[*]"filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho " & _

 

[*]"from ((pai INNER JOIN filho " & _

 

[*]"ON pai.cod_pai = filho.cod_pai) " & _

 

[*]"INNER JOIN nota " & _

 

[*]"ON filho.cod_filho = nota.cod_filho)" 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Douglas, tente incluíndo parênteses no seu SQL...se não funcionar verifique o nome dos campos e tabelas para ver se está tudo certo.

 

ASP

[*]strSQL "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai," & _"filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho " & _"from ((pai INNER JOIN filho " & _"ON pai.cod_pai = filho.cod_pai) " & _"INNER JOIN nota " & _"ON filho.cod_filho = nota.cod_filho)" 

<{POST_SNAPBACK}>

Maninho, fiz esse exemplo que você me passou e nada e fiz esse abaixo

 

ASP

[*]strSQL "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai, filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from pai INNER JOIN (filho INNER JOIN nota ON filho.cod_filho = nota.cod_filho) ON pai.cod_pai = filho.cod_pai " 

 

Ambos deram o mesmo erro.

 

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: ''

 

/douglas/estudos/inner/pagina162_5329.asp, line 38

 

 

Abraços.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Douglas, isso é por causa do & _ que é um recurso para mostrar que o código continua na próxima linha...Da sua forma (código em uma só linha), ficaria assim:strSQL = "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai,filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from ((pai INNER JOIN filho ON pai.cod_pai = filho.cod_pai) INNER JOIN nota ON filho.cod_filho = nota.cod_filho)"Tenta aí..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Douglas, isso é por causa do & _ que é um recurso para mostrar que o código continua na próxima linha...

 

Da sua forma (código em uma só linha), ficaria assim:

 

strSQL = "select nota.cod_filho AS notafilho, pai.nome_pai AS nomepai,filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from ((pai INNER JOIN filho ON pai.cod_pai = filho.cod_pai) INNER JOIN nota ON filho.cod_filho = nota.cod_filho)"

 

Tenta aí..

<{POST_SNAPBACK}>

Maninho, foi exatamente isso que eu fiz e deu esse erro. Mesmo assim eu acabei de conferir os nomes das tabelas, mas nada.

 

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: ''

 

/douglas/estudos/inner/pagina162_5329.asp, line 37

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o código da linha 37?

 

Olha se você instanciou os objetos connection e recordset...

<{POST_SNAPBACK}>

Juliano o código está correto. Só a instrução so SQL que não

 

linha 36 e 37

Call abre_conexao

Set rsClientes = Conexao.Execute(strSQL)

 

 

Abraços..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o código da linha 37?

 

Olha se você instanciou os objetos connection e recordset...

<{POST_SNAPBACK}>

Juliano o código está correto. Só a instrução so SQL que não

 

linha 36 e 37

Call abre_conexao

Set rsClientes = Conexao.Execute(strSQL)

 

 

Abraços..

<{POST_SNAPBACK}>

Arrumado Juliano. Erra erro no servidor. Tive que ligar lá pra eles darem o acesso para essa pasta. Pq tem um update tbm.

 

Essa meus erros de SQL é porque estou preparando um tutorial de SQL com todos os exemplos...

 

 

 

Valeu...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Juliano vejo só, 3 exemplo com o mesmo resultado'---------------------> INNER JOIN E INNER JOIN <---------------------------strSQL = "select nota.nota_filho AS notafilho, pai.nome_pai AS nomepai, filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from pai INNER JOIN (filho INNER JOIN nota ON filho.cod_filho = nota.cod_filho) ON pai.cod_pai = filho.cod_pai " strSQL = "select nota.nota_filho AS notafilho, pai.nome_pai AS nomepai,filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from ((pai INNER JOIN filho ON pai.cod_pai = filho.cod_pai) INNER JOIN nota ON filho.cod_filho = nota.cod_filho)"strSQL = "select nota.nota_filho AS notafilho, pai.nome_pai AS nomepai,filho.nome_filho AS nomefilho, filho.sexo_filho AS sexofilho from (pai INNER JOIN filho ON pai.cod_pai = filho.cod_pai) INNER JOIN nota ON filho.cod_filho = nota.cod_filho"

Compartilhar este post


Link para o post
Compartilhar em outros sites

tinha um topico ativo com o mesmo questionamento

 

http://www.imasters.com.br/forum/index.php?showtopic=140303

 

espero que ambos consigam entender o uso de INNER JOIN com mais de duas tabelas...

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.