Proyeksi kueri hanya dapat memiliki satu instance dari nama yang diberikan. Seperti yang ditunjukkan klausa WHERE Anda, Anda memiliki beberapa tabel dengan kolom bernama ID. Karena Anda memilih * proyeksi Anda akan memiliki beberapa kolom yang disebut ID. Atau akan terjadi jika bukan karena kompilator yang melemparkan ORA-00918.
Solusinya cukup sederhana:Anda harus memperluas proyeksi untuk memilih kolom bernama secara eksplisit. Kemudian Anda dapat meninggalkan kolom duplikat, mempertahankan hanya (katakanlah) COACHES.ID atau gunakan alias kolom:coaches.id as COACHES_ID .
Mungkin itu menurut Anda karena banyak mengetik, tetapi itu satu-satunya cara. Jika ada kenyamanan, SELECT * dianggap sebagai praktik buruk dalam kode produksi:kolom yang dinamai secara eksplisit jauh lebih aman.