1248 - Every derived table must have its own alias报错的解决办法

报错场景

我前几天在学习MySQL的时候,写了以下的SQL语句

SELECT COUNT(*) 部门个数 
FROM (
    SELECT COUNT(*) FROM employee GROUP BY department
);

报错信息如下:

1248 - Every derived table must have its own alias报错的解决办法_第1张图片
解决办法

这个报错的意思是每个派生表必须有自己的别名。就是说每个子查询出来的表要取别名。回看刚刚报错的SQL语句,子查询出来的表的确是没有取别名,将别名加上,报错就没了。

这是修改后的正确写法:

SELECT COUNT(*) 部门个数 
FROM (
 SELECT COUNT(*) FROM employee GROUP BY department
) AS d;

如果该子查询后续不需要用到,则随便取个别名就可以了,可以AS + 别名 或者是 空格加别名

你可能感兴趣的:(1248 - Every derived table must have its own alias报错的解决办法)