它非常令人困惑
我编写了3个这样的查询:
select 1 id from dual ---- this is f1
select 2 id from dual ----- this is f2
select 3 id from dual ----- this is f3
然后试图加入他们
当我做了像
这样的查询时 select count(id) from f1 full join f2 on f1.id=f2.id ==== error
因为列ID不明确
但以下查询有效
select count(id) from f1
full join f2 on f1.id=f2.id
full join f3 on f1.id=f2.id or f2.id=f3.id
然后由于列ID不明确,下面的查询无法正常工作
select count(id) from f1
full join f2 on f1.id=f2.id
full join f3 on f1.id=f2.id
任何人都可以告诉为什么"或f2.id = f3.id"不会导致模糊列id错误吗?
答案 0 :(得分:1)
错误在COUNT(ID)
,缺少表别名。