查询MySQL数据库时遇到一些问题:
"SELECT event_id, area_name FROM tie_in.events LEFT JOIN tie_in.area USING (area_id)"
当我对我的数据库运行此查询时,它返回错误#1052 - Column 'area_id' in from clause is ambiguous
。
我在此查询中有其他LEFT JOIN
我刚删除它们以便于阅读,并且它们可以正常运行。
任何帮助解决这个问题将不胜感激。
谢谢你们!
答案 0 :(得分:2)
如果多个表具有相同名称的列,则必须通过在其前面添加表名来告诉DB要采用哪个
SELECT e.event_id,
a.area_name
FROM tie_in.events e
LEFT JOIN tie_in.area a ON a.area_id = e.area_id
答案 1 :(得分:0)
错误基本上意味着可以在查询的其他表中找到名称为area_id
的列。
您可以使用前缀:
为列名添加别名 "SELECT event_id, area_name FROM tie_in.events LEFT JOIN tie_in.area USING (table.area_id)"
将table
替换为表名或别名。