查询出king所在部门的工作年限最大的员工名字
select e.ename 姓名
       -- ,months_between(sysdate, e.hiredate) 工作时长(月)
   from emp e
  where months_between(sysdate, hiredate) =
        (select max(months_between(sysdate, hiredate))
           from emp e, dept d
          where e.deptno = d.deptno
            and e.deptno = (select d.deptno
                              from emp e, dept d
                             where e.deptno = d.deptno
                               and e.ename = 'KING'))
为什么我不注释掉第二行,程序就报错呢,说是from后面没有where语句,在线等啊
------解决方案--------------------
SQL code
,months_between(sysdate, e.hiredate) "工作时长(月)"
--要用双引号把列名引起来,这样就不会出错了,不过你的语句也有问题吧