理解 MySQL 中的“每个派生表必须有自己的别名”错误
当运行涉及嵌套子查询的查询时,MySQL有时会抛出错误,指出“每个派生表必须有自己的别名”。此错误提醒您子查询结构存在问题。
要纠正此错误,每个子查询(或派生表)必须具有唯一的别名。该别名充当标识符,允许外部查询引用子查询的结果。
例如,考虑以下查询:
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) );
这里,发生错误是因为最里面的查询子查询(从 TT2 中选择的一个)没有别名。要解决这个问题,请为该子查询分配一个别名,如下所示:
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) AS T ) AS T
别名“T”现在允许外部查询引用最里面子查询的结果,有效消除错误.
在很多情况下,可以通过删除不必要的子查询来简化查询,如下例所示:
SELECT ID FROM TT2
以上是为什么 MySQL 会抛出'每个派生表必须有自己的别名”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!