i have a query such as
x
SELECT *
FROM bookings
left JOIN answers on bookings.id=answers.booking_id
where id=1
since both tables have id and booking_id i am getting : column reference "id" is ambiguous
Advertisement
Answer
Qualify the column references — all of them.
To facilitate this, use table alias that are abbreviations of the table names. Something like this:
SELECT *
FROM bookings b LEFT JOIN
answers a
ON b.id = a.booking_id
WHERE b.id = 1;
(Note: I don’t know if you want b.id = 1
or a.id = 1
, but the latter condition should be in the ON
clause for a LEFT JOIN
.)
I would also advise you to list out the columns in the SELECT
— you have duplicate names so you want to be careful there too.