UPDATE T
   SET SAL =
       (SELECT LAG(EMPNO, 1, 0) OVER(ORDER BY HIREDATE) EN
          FROM EMP
         WHERE EMP.EMPNO = T.EMPNO)
 WHERE T.EMPNO > 7788;当你WHERE EMP.EMPNO = T.EMPNO加上这个条件的时候其实每次只要一条记录,一条记录再用LAG函数处理,这条唯一的记录的不存在上下相邻的条记录。
所以。

解决方案 »

  1.   


    UPDATE T
       SET SAL =
           (SELECT LAG(EMPNO, 1, 0) OVER(ORDER BY HIREDATE) EN
              FROM EMP
             WHERE EMP.EMPNO = T.EMPNO)
     WHERE T.EMPNO > 7788;当你WHERE EMP.EMPNO = T.EMPNO加上这个条件的时候其实每次只要一条记录,一条记录再用LAG函数处理,这条唯一的记录的不存在上下相邻的条记录。
    所以。明白了,谢谢版主!!