DBAtlas · Atlas de operaciones de bases de datos

1052: Column 'x' in field list is ambiguous (columna ambigua en la lista de campos)

MySQL

¿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, MySQL no puede saber 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 escribe sin calificar (sin prefijo) en SELECT, WHERE, ON, GROUP BY u ORDER BY.

Cómo solucionarlo

Califique cada columna ambigua con el nombre o alias de la tabla: SELECT a.id, b.id FROM a JOIN b ON a.id = b.a_id; Asigne alias cortos a las tablas y anteponga el prefijo a todas las columnas en conflicto. Reduzca la ambigüedad en joins sobre columnas comunes con USING(my_column).

Abrir en DBAtlas →

Más entradas de este motor