本帖最后由 woxinliulang 于 2012-08-22 15:58:09 编辑

解决方案 »

  1.   

    第几行的薪水差是无意义的。
    你是要查两个人的薪水差,两个部门的,两个JOB的,还是两个入职年份的。
      

  2.   

     select (select sal from tablename t where t.empno = 7839)- (select sal from tablename t where t.empno = 7844) from dual直接查不就行了
      

  3.   


    --直接取数据第9、10行进行相减的操作
    SELECT (SELECT SAL FROM TABLE WHERE ROWNUM=9) - 
    (SELECT SAL FROM TABLE WHERE ROWNUM=10) FROM DUAL
      

  4.   


    select sal+nvl(comm,0)-lead(sal+nvl(comm,0),1,sal+nvl(comm,0))over(order by empno)
      from emp;
      

  5.   


    你好你的这个sql语句不行,这个表是oralce里默认的emp表,你自己试试不行。
      

  6.   

    用lead或者lag分析函数来实现,他可以在当前行上对当前行之外的行做操作