CPGRPRULREL_NUM_PRIOR

问题描述 投票:0回答:1

我在一个名为CPGRPRULREL的表中有下面的数据,这里的CPGRPRULREL_NUM_PRIOR是CPGRPRULREL_NUM的链接(即有外键约束--一种父子关系)。

CPGRPRULREL_NUM | CPGRPRULREL_NUM_PRIOR | STATUS     | CNDQUALSRC_CD | CNDQUALTYP_CD | CPGRP_NUM
--------------------------------------------------------------------------------------------------
41292           | 41289                 | Active     | PRODCNT       | PRODCNTUNQ    | 
41289           | 41286                 | Superseded | OTHERPG       |               | 118729
41286           | 41283                 | Superseded | SUBM          | VOLUME        | 
41283           | 41280                 | Superseded | OTHERPG       |               | 118729
41280           | 41277                 | Superseded | OTHERPG       |               | 118729
41277           | null                  | Superseded | PRODCNT       | PRODCNTALL    | 

这里,CPGRPRULREL_NUM_PRIOR是CPGRPRULREL_NUM的链接(即有外键约束--一种父子关系)。

我想删除所有的CPGRP_NUM=118729。在此之前,我需要更新剩余记录的CPGRPRULREL_NUM_PRIOR的值,以便正确的链接保持完整。

我需要更新查询,只更新具有CPGRP_NUM <> 118729的记录,并且在运行更新后有以下数据。

CPGRPRULREL_NUM | CPGRPRULREL_NUM_PRIOR | STATUS     | CNDQUALSRC_CD | CNDQUALTYP_CD | CPGRP_NUM
--------------------------------------------------------------------------------------------------
41292           | 41286                 | Active     | PRODCNT       | PRODCNTUNQ    | 
41289           | 41286                 | Superseded | OTHERPG       |               | 118729
41286           | 41277                 | Superseded | SUBM          | VOLUME        | 
41283           | 41280                 | Superseded | OTHERPG       |               | 118729
41280           | 41277                 | Superseded | OTHERPG       |               | 118729
41277           | null                  | Superseded | PRODCNT       | PRODCNTALL    |            

需要注意的是,2条CPGRPRULREL_NUM 41292和41286的行已经更新了CPGRPRULREL_NUM_PRIOR。

sql oracle foreign-keys parent-child hierarchical-data
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.