Mysql報錯:Every derived table must have its own alias <缺少一個別名>
在子查詢中經常會犯的錯誤 。這個別名其實沒啥用途.... 但是必須要加上不然就會報錯。
select name,class from (select * from teacher) as stuname...... ## as 可以忽略;studname就是子查詢的別名。
在進行嵌套查詢的時候子查詢出來的的結果是作為一個派生表來便以上一級查詢的,所以子查詢的結果就得有一個別名。
select d.deptno,ename,deptname
from (
select deptno,ename from (
select e1.deptno,e1.empname ename,e1.hiredate h1,e2.empname mgr_name,e2.hiredate h2 from emp e1
inner join emp e2 on(e1.mgr=e2.empno)
) as d1 where h1<h2
) as d2 inner join dept d using(deptno);