Error code
Oracle ORA-00918
ORACLEORA-00918
Database Error Code· An error code returned by a database server such as PostgreSQL or MySQL.
What it means
column ambiguously defined — the column name matches more than one table in the query.
How to fix it
- Prefix every ambiguous column reference with the table name or alias (e.g. t1.column_name).
- Use explicit column aliases to distinguish columns from different tables.
- Rewrite the query with table aliases for readability and to make all references unambiguous.
Not affiliated with Oracle. Answer summarized from the manufacturer's manual linked above; consult that source for the authoritative procedure.
More Oracle codes
- ORA-00001unique constraint violated — duplicate value in unique index
- ORA-00054resource busy and acquire with NOWAIT specified — lock unavailable
- ORA-00060deadlock detected while waiting for resource
- ORA-00904invalid identifier — the column or alias name is not recognized
- ORA-00911invalid character — the SQL statement contains an unexpected character
- ORA-00933SQL command not properly ended — unexpected token at the end of the statement
- ORA-00942table or view does not exist — the named object is not accessible
- ORA-00955name is already used by an existing object — DDL name conflict
- ORA-01017invalid username/password — logon denied
- ORA-01400cannot insert NULL into a NOT NULL column
- ORA-01403no data found — a SELECT INTO or FETCH returned no rows
- ORA-01422exact fetch returns more than requested number of rows — SELECT INTO got multiple rows