ナレッジベース

カスタム SQL の使用時のエラー "ORA-00918: column ambiguously defined"


発行: 06 Feb 2014
最終修正日: 08 Nov 2019

問題

カスタム SQL を含む Oracle データベースに接続するときに、次のエラーが発生する場合があります。

ORA-00918: column ambiguously defined (ORA-00918: 列の定義が不明瞭です)

環境

  • Tableau Desktop
  • Oracle

解決策

重複する列名に別名を付けて、列名が一意になるようにします。
たとえば、カスタム SQL で、
select usertest1.col1, usertest2.col1, from usertest1, usertest2
の代わりに、次のように書き込みます。
select usertest1.col1 as 1_col1, usertest2.col1 as 2_col1, from usertest1, usertest2
 

原因

結合されている 2 つ以上の別々のテーブルに同じ列名が存在します。カスタム SQL には、これらのうちどの列を使用するかを決定する十分な特定性が含まれていません。
この記事で問題は解決しましたか?