KNOWLEDGE BASE

Errore "ORA-00918: column ambiguously defined" durante l'utilizzo di SQL personalizzato


Pubblicato: 06 Feb 2014
Data dell'ultima modifica: 08 Nov 2019

Problema

Quando ci si connette a un database Oracle con SQL personalizzato, potrebbe verificarsi il seguente errore.

ORA-00918: column ambiguously defined  (ORA-00918: colonna definita in modo ambiguo)

Ambiente

  • Tableau Desktop
  • Oracle

Soluzione

Crea un alias degli eventuali nomi di colonna duplicati in nomi di colonna univoci.
Ad esempio, nella tua dichiarazione SQL personalizzata, invece di
select usertest1.col1, usertest2.col1, from usertest1, usertest2
scrivi: 
select usertest1.col1 as 1_col1, usertest2.col1 as 2_col1, from usertest1, usertest2
 

Causa

Lo stesso nome della colonna esiste in almeno due tabelle separate che si stanno unendo. L'SQL personalizzato non contiene una specificità sufficiente a determinare quali di queste colonne usare.
Con questo articolo hai risolto il problema?