比较两个连续的行并用teradata中的下一行更新第一行

比较两个连续的行并用teradata中的下一行更新第一行,teradata,Teradata,有人能帮我解决这个问题吗 我需要比较下表的连续行,并用第二行字段更新第一行字段 MBR JOIN DT FIELD1 FIELD2 FIELD3 OPEN_DT CLOS_DT LLKEY UPD_LLKEY 12345 2014-07-30 D UNK S 2014-07-31 **2014-08-24** 715700024 **721200013** 12345 2014-09-11 D

有人能帮我解决这个问题吗

我需要比较下表的连续行,并用第二行字段更新第一行字段

MBR     JOIN DT     FIELD1  FIELD2  FIELD3  OPEN_DT     CLOS_DT      LLKEY      UPD_LLKEY
12345   2014-07-30  D       UNK     S       2014-07-31  **2014-08-24**  715700024   **721200013**
12345   2014-09-11  D       UNK     UNK     **2014-09-13**  2014-10-01  **718600061**   735800004
12345   2014-09-29  D       UNK     UNK     2014-10-01  8888-12-31  735800004   735800004
这里我需要比较两个连续的行first_line.CLOS_DT和second_line.OPEN_DT,如果不匹配,需要用第二行更新first_line.CLOS_DT..OPEN_DT,UPD_LLKEY和第二行的LLKEY。并且期望的输出是

MBR     JOIN DT     FIELD1  FIELD2  FIELD3  OPEN_DT     CLOS_DT     LLKEY       UPD_LLKEY
12345   2014-07-30  D       UNK     S       2014-07-31  **2014-09-13**  715700024   **718600061**
12345   2014-09-11  D       UNK     UNK     **2014-09-13**  2014-10-01  **718600061**   735800004
12345   2014-09-29  D       UNK     UNK     2014-10-01  8888-12-31  735800004   735800004
如有任何帮助,我们将不胜感激

谢谢,
Apmsa

将此保存到新的表格节奏

SELECT  mb_r
,join_dt
,open_dt
,close_dt

,COALESCE(MAX(open_dt) OVER (PARTITION BY mb_r  ORDER BY open_dt ROWS BETWEEN 1 FOLLOWING AND 1 FOLLOWING), close_dt) A2

FROM TEMP2
现在从速度表更新速度2表

UPDATE temp2 C1
  FROM (SELECT  mb_r
    ,join_dt
    ,open_dt
    ,close_dt
    ,A2 from tempo) D1
   SET close_dt = d1.A2
 WHERE C1.mb_r = d2.mb_r
and c1.join_dt=d2.join_dt;
您还可以使用与上述查询类似的方式包括需要更新的其他coulmn