Hier eine Variante die die Duplikate entfernt und die Daten wieder in der originalform bereitstellt:
Code:with kunden(kdnr, knz1, knz2, knz3, knz4, knz5) as ( values (1, 'AAA', 'BBB', 'CCC', 'DDD', 'EEE'), (2, 'AAA', 'BBB', 'BBB', 'CCC', 'DDD') ), unpivot as ( select distinct kdnr, knz, dense_rank() over(partition by kdnr order by knz) as knznr from kunden cross join lateral( values (knz1), (knz2), (knz3), (knz4), (knz5) ) as dt(knz) ) select kdnr, ifnull((select knz from unpivot where unpivot.kdnr = kunden.kdnr and knznr = 1), '') as knz1, ifnull((select knz from unpivot where unpivot.kdnr = kunden.kdnr and knznr = 2), '') as knz2, ifnull((select knz from unpivot where unpivot.kdnr = kunden.kdnr and knznr = 3), '') as knz3, ifnull((select knz from unpivot where unpivot.kdnr = kunden.kdnr and knznr = 4), '') as knz4, ifnull((select knz from unpivot where unpivot.kdnr = kunden.kdnr and knznr = 5), '') as knz5 from kunden
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)



Mit Zitat antworten
Bookmarks