DBAtlas · Атлас эксплуатации баз данных

ORA-00918: Столбец определён неоднозначно

Oracle

Что это значит?

Столбец с одним и тем же именем есть в нескольких таблицах запроса, и поскольку он используется без префикса таблицы/псевдонима, Oracle не может определить, к какой таблице он относится.

Почему возникает?

В обеих соединяемых таблицах есть столбец с одинаковым именем (например, ID в обеих); столбец используется без квалификации (без префикса) в SELECT, WHERE или ORDER BY.

Как исправить

Квалифицируйте каждый неоднозначный столбец именем таблицы или псевдонимом: SELECT a.id, b.id FROM tableA a JOIN tableB b ON a.id = b.a_id; Давайте таблицам короткие псевдонимы и указывайте префикс у всех столбцов для удобства чтения и ясности.

Открыть в DBAtlas →

Ещё по этой СУБД