错误代码:1066。不是唯一的表/别名:'zones',使用外键连接 3 个数据库表 [重复]
Posted
技术标签:
【中文标题】错误代码:1066。不是唯一的表/别名:\'zones\',使用外键连接 3 个数据库表 [重复]【英文标题】:Error Code: 1066. Not unique table/alias: 'zones', Joining 3 database tables with foreign keys [duplicate]错误代码:1066。不是唯一的表/别名:'zones',使用外键连接 3 个数据库表 [重复] 【发布时间】:2018-12-17 11:37:13 【问题描述】:我的数据库表
区域 [id zone zone_manager_email]
城市 [ id city zone_id ]
商店[id name store_no city_id]
我有这 3 个表,我尝试将它们内联,但我的代码不起作用。
SELECT zones.zone, zones.zone_manager_email,store.store_id
FROM zones,store
INNER JOIN zones on zones.id = cities.zone_id
INNER JOIN store ON store.city_id = city.id
【问题讨论】:
你为什么要加入每张桌子两次? 【参考方案1】:首先,您从未真正参考过城市表,然后您似乎对不同方式之间的区别感到有些困惑。
从 a, b WHERE a.col1 = b.col1 对比 来自 a.cool1 = b.col1 上的内部连接 b。
试试这个:)。
SELECT zones.zone, zones.zone_manager_email,store.store_id
FROM zones
INNER JOIN cities ON zones.id = cities.zone_id
INNER JOIN store ON store.city_id = city.id
【讨论】:
错误代码:1054。“on 子句”中的未知列“city.id”现在显示如下 我没有对您的代码进行足够的校对。尝试自己弄清楚,如果它不起作用,请在 city 上从单数形式转换为复数形式:) 谢谢,这是我的错误,现在可以了。以上是关于错误代码:1066。不是唯一的表/别名:'zones',使用外键连接 3 个数据库表 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
错误代码:1066。不是唯一的表/别名:'ordertbl' - 无法执行内部连接 MYSQL
发生数据库错误错误号:1066 不是唯一的表/别名:[重复]