La proyección de una consulta solo puede tener una instancia de un nombre determinado. Como muestra su cláusula WHERE, tiene varias tablas con una columna llamada ID. Porque está seleccionando *
su proyección tendrá varias columnas llamadas ID. O lo habría sido si no fuera por el compilador lanzando ORA-00918.
La solución es bastante simple:tendrá que expandir la proyección para seleccionar explícitamente las columnas con nombre. Luego, puede omitir las columnas duplicadas, conservando solo (digamos) COACHES.ID o usar alias de columna:coaches.id as COACHES_ID
.
Quizás eso le parezca mucho teclear, pero es la única manera. Si te sirve de consuelo, SELECT *
se considera una mala práctica en el código de producción:las columnas con nombres explícitos son mucho más seguras.