错误代码:1066。不是唯一的表/别名:'ordertbl' - 无法执行内部连接 ​​MYSQL

Posted

技术标签:

【中文标题】错误代码:1066。不是唯一的表/别名:\'ordertbl\' - 无法执行内部连接 ​​MYSQL【英文标题】:Error Code: 1066. Not unique table/alias: 'ordertbl' - Not able to Perform Inner Join MYSQL错误代码:1066。不是唯一的表/别名:'ordertbl' - 无法执行内部连接 ​​MYSQL 【发布时间】:2020-01-31 04:51:48 【问题描述】:

您好,我正在尝试列出在 2030 年 1 月由科罗拉多州客户 (CustState) 发送给华盛顿收件人 (OrdState)。使用 INNER JOIN 样式,列来自 2 个不同的表 - Customer 和 Orders,主键为 CustNo

select OrdNo, OrdDate, CustNo, CustFirstName, CustLastName from ordertbl, customer
inner join customer on CustNo = CustNo
WHERE ordDate like '%2030-01%' AND custstate ='CO' AND OrdState ='WA';

【问题讨论】:

了解表别名并需要它们自加入。这是一个常见问题解答。在考虑发布之前,请始终在谷歌上搜索任何错误消息或您的问题/问题/目标的许多清晰、简洁和精确的措辞,有或没有您的特定字符串/名称和站点:***.com 和标签,并阅读许多答案。如果您发布问题,请使用一个短语作为标题。请参阅How to Ask 和投票箭头鼠标悬停文本。 请在代码问题中给出minimal reproducible example--剪切&粘贴&运行代码;具有期望和实际输出(包括逐字错误消息)的示例输入(作为初始化代码);标签和版本;明确的规范和解释。对于包含最少代码的错误,您可以给出的代码是您显示的代码可以通过您显示的代码扩展为不正常。 (调试基础。)How to Ask 适用于包含 DBMS 和 DDL 的 SQL,其中包括约束、索引和表格初始化。 这能回答你的问题吗? Why does this SQL code give error 1066 (Not unique table/alias: 'user')? @RuthIneh 。 . .为什么在日期列上使用字符串函数?看起来不对。 【参考方案1】:

我认为您的 inner join 语法不正确。 请在下面尝试-

select
     o.OrdNo, o.OrdDate, c.CustNo, c.CustFirstName, c.CustLastName 
from ordertbl as o
inner join customer as c on c.CustNo = o.CustNo
WHERE o.ordDate like '%2030-01%' 
      AND c.custstate ='CO' 
      AND o.OrdState ='WA';

【讨论】:

以上是关于错误代码:1066。不是唯一的表/别名:'ordertbl' - 无法执行内部连接 ​​MYSQL的主要内容,如果未能解决你的问题,请参考以下文章

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

错误代码:1066。不是唯一的表/别名:'zones',使用外键连接 3 个数据库表 [重复]

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

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

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

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