Files
lpj/database/seeders/sql/query_mig_debiturs_addrs.sql
2025-05-06 15:05:09 +07:00

32 lines
1.2 KiB
SQL

WITH DuplicateDebitur AS (
SELECT KD_DEBITUR_SEQ
FROM prm_debitur_addr pda
GROUP BY pda.KD_DEBITUR_SEQ
HAVING COUNT(KD_DEBITUR_SEQ) > 1
),
MinUrutSeq AS (
SELECT pda.KD_DEBITUR_SEQ, MIN(TRIM(pda.URUT_SEQ)) AS Min_URUT_SEQ
FROM prm_debitur_addr pda
GROUP BY pda.KD_DEBITUR_SEQ
HAVING COUNT(KD_DEBITUR_SEQ) > 1
)
SELECT pda.`KD_DEBITUR_SEQ` AS mig_kd_debitur_seq
, pda.`URUT_SEQ` AS mig_urut_seq
, pda.`ADDR_TYPE_SEQ` AS mig_addr_type_seq
, pda.`ADDR_VALUE` AS mig_addr_value
, pda.`USER_UPDATE` AS mig_user_update
, pda.`TGL_UPDATE` AS mig_tgl_update
, pda.`FLAG_OTO` AS mig_flag_oto
, pda.`USER_OTO` AS mig_user_oto
, pda.`TGL_OTO` AS mig_tgl_oto
, pda.`KD_KEL_SEQ` AS mig_kd_kel_seq
, pda.`ADDR_DISPLAY` AS mig_addr_display
, pda.`KD_CABANG` AS mig_kd_cabang
, pda.`NAMA_DAERAH` AS mig_nama_daerah
, 1 AS is_mig
FROM prm_debitur_addr pda
JOIN DuplicateDebitur dd ON dd.KD_DEBITUR_SEQ = pda.KD_DEBITUR_SEQ
LEFT JOIN MinUrutSeq mus ON mus.KD_DEBITUR_SEQ = pda.KD_DEBITUR_SEQ
AND mus.Min_URUT_SEQ = TRIM(pda.URUT_SEQ)
WHERE mus.Min_URUT_SEQ IS NULL
ORDER BY pda.KD_DEBITUR_SEQ;