DBAtlas · Atlas de operaciones de bases de datos

ORA-00918: column ambiguously defined (columna definida de forma ambigua)

Oracle

¿Qué significa?

Existe una columna con el mismo nombre en más de una tabla de la consulta y, como se usa sin prefijo de tabla/alias, Oracle no puede determinar a qué tabla pertenece.

¿Por qué ocurre?

Ambas tablas combinadas tienen una columna con el mismo nombre (p. ej., ID en ambas); la columna se usa sin calificar (sin prefijo) en SELECT, WHERE u ORDER BY.

Cómo solucionarlo

Califique cada columna ambigua con el nombre o alias de la tabla: SELECT a.id, b.id FROM tableA a JOIN tableB b ON a.id = b.a_id; Asigne alias cortos a las tablas y anteponga el prefijo a todas las columnas para mejorar la legibilidad y la claridad.

Abrir en DBAtlas →

Más entradas de este motor