DEV Community

Fatih Şahin
Fatih Şahin

Posted on • Updated on

PostgreSQL Multi Table Update


CREATE TABLE ZZZB_ASTT_BRANCH_ASSET_GRP AS
SELECT
S.ASSET_GRP_ID,
T.ASSET_CARD_ID,
S.ACC_ASSET_LOSS_ID,
S.ACC_ASSET_AMORT_ID,
S.ACC_SALES_DEBIT_ID,
S.ACC_SALES_CREDIT_ID,
S.ACC_SALES_ID,
S.ACC_VAL_IN_DBT_ID,
S.ACC_VAL_IN_CRD_ID,
S.ACC_VAL_DEC_DBT_ID,
S.ACC_VAL_DEC_CRD_ID 
FROM ASTT_BRANCH_ASSET_GRP S
INNER JOIN ASTD_ASSET_CARD T ON T.ASSET_GRP_ID = S.ASSET_GRP_ID

UPDATE ASTD_ASSET_CARD A
SET
ACC_ASSET_LOSS_ID   =(SELECT ACC_ASSET_LOSS_ID   FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_ASSET_AMORT_ID  =(SELECT ACC_ASSET_AMORT_ID  FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_SALES_DEBIT_ID  =(SELECT ACC_SALES_DEBIT_ID  FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_SALES_CREDIT_ID =(SELECT ACC_SALES_CREDIT_ID FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_SALES_ID        =(SELECT ACC_SALES_ID        FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_VAL_IN_DBT_ID   =(SELECT ACC_VAL_IN_DBT_ID   FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_VAL_IN_CRD_ID   =(SELECT ACC_VAL_IN_CRD_ID   FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_VAL_DEC_DBT_ID  =(SELECT ACC_VAL_DEC_DBT_ID  FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID),
ACC_VAL_DEC_CRD_ID  =(SELECT ACC_VAL_DEC_CRD_ID  FROM ZZZB_ASTT_BRANCH_ASSET_GRP B WHERE A.asset_card_id=B.ASSET_CARD_ID)
WHERE A.ASSET_GRP_ID IN (SELECT ASSET_GRP_ID FROM ZZZB_ASTT_BRANCH_ASSET_GRP )
Enter fullscreen mode Exit fullscreen mode

Top comments (0)