ERROR 1248 (42000): Every derived table must have its own alias

Posted TaKe___Easy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ERROR 1248 (42000): Every derived table must have its own alias相关的知识,希望对你有一定的参考价值。

问题

mysql> select 编号 from (select 编号,姓名 from qz1);
ERROR 1248 (42000): Every derived table must have its own alias

原因:
select * from 表名,此为标准格式
而以上的查询语句,"表名"的位置其实是一个结果集,mysql并不能识别
此时给结果集设置一个别名,并且以select a.编号,姓名 from a;的方式查询,将此结果集视为一张表就可以正常查询出数据了

【相当于select qz1.编号,姓名 from qz1;  select.字段,字段 from;】
mysql> select a.编号,姓名 from (select 编号,姓名 from qz1) a;
+--------+--------------+
| 编号   | 姓名         |
+--------+--------------+
|      1 | 刘一         |
|      2 | 王二         |
|      3 | 李四         |
|      4 | 田五         |
|      5 | 教授         |
|      6 | 小明         |
|      7 | 刘二         |
|      8 | 刘二蛋       |
|      9 | 刘小天田     |
+--------+--------------+

以上是关于ERROR 1248 (42000): Every derived table must have its own alias的主要内容,如果未能解决你的问题,请参考以下文章

ERROR 1064 (42000)

运行存储过程时出错 ERROR 1064 (42000)

MySQL - ERROR 1235 (42000)

ERROR 1172 (42000): 结果在 mysql 存储过程中包含多于一行

为啥我在程序上收到 ERROR 1064 (42000) mysql 错误?

ERROR 1064 (42000) 过度分区语法中的数据库错误