簡體   English   中英

ORACLE PL/SQL 如何在過程中創建 ParentID

[英]ORACLE PL/SQL How to create ParentID in Procedure

我有一個從表中加載數據的過程,並且具有“子”和“父”關系(DEPARTMENT_CODE 和 PARENT_DEPARTMENT_CODE)。 所以我也有兩列帶有這些列的ID,列“ID_DEPARTMENT”是從Oracle創建表自動遞增的,但是“PARENTID_DEPARTMENT”需要根據上面提到的兩列填寫“ID_DEPARTMENT”。 對於沒有父項的字段,您應該將其留空。

也就是說,您如何在 Oracle 的“插入”過程中執行此操作?

我有的:

在此處輸入圖像描述

我需要的:

在此處輸入圖像描述

謝謝!

我假設您的表名為 YourTable

UPDATE YourTable t1 
SET t1.PARENTID_DEPARTMENT = (SELECT t2.ID_DEPARTMENT
                              FROM YourTable t2 
                              WHERE t1.PARENT_DEPARTMENT_CODE = t2.DEPARTMENT_CODE)
WHERE t1.PARENT_DEPARTMENT_CODE <> ''
AND EXISTS (SELECT t2.ID_DEPARTMENT
            FROM YourTable t2 
            WHERE t1.PARENT_DEPARTMENT_CODE = t2.DEPARTMENT_CODE)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM