错误代码: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 - MySQL 中的表/别名不是唯一的

发生数据库错误错误号:1066 不是唯一的表/别名:[重复]

为啥错误 #1066 - 不是唯一的表/别名:'cat_rapoarte'

#1066 - 错误不是唯一的表别名

Laravel - 语法错误或访问冲突:1066 不是唯一的表/别名