Jump to content
Fórum Script Brasil
  • 0

Select colunas com o mesmo nome em relações diferentes: Como fazer?


robgeek

Question

Bom dia!

Tenho duas relações nas quais há uma coluna chamada "nome":

Livro(Codigo_Livro, Nome, #Codigo_Estante)

Estante(Codigo_Estante, Nome)

Preciso consultar o nome de todas as estantes com o nome de todos os livros em uma só consulta.

Tentei:

select nome, nome from livro join estante using ( codigo_estante )

E a saída foi:

ORA-00918: column ambiguously defined

Como resolvo isso?

Obrigado!

Edited by robgeek
Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Uma vez que as colunas têm nomes iguais, tens de usar os nomes das respectivas tabelas como prefixo, caso contrário o nome da tabela é ambíguo. Daí o erro.

Tenta assim:

SELECT livro.nome, estante.nome FROM livro JOIN estante USING (codigo_estante)
Link to comment
Share on other sites

  • 0

outra maneira, alem dessa do wootzor, é você criar "Alias" para a coluna.

SELECT nome AS N1, nome AS N2 FROM ....

em "N1" e "N2" você pode usar o nome que quiser, apenas use o mais simples possível pra você.

Nesse caso, terias que utilizar o nome das tabelas como prefixo no momento em que defines os aliases. Algo como:

SELECT tabela1.nome AS N1, tabela2.nome AS N2 FROM (...)

E a partir daí é que passas a poder referir-te aos campos apenas pelo respectivo alias.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...