DB2 SQL 递归实现多行合并
生活随笔
收集整理的這篇文章主要介紹了
DB2 SQL 递归实现多行合并
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最終效果
?
原始數據:
?
轉換腳本:
WITH post_a AS ( SELECT DISTINCT T.EMP_NO,S.CODE_ FROM inscndb.DTFMA000_EMP_POST T ,VIEW_BI_POST S WHERE T.POST||'-'||POST2 = S.POST ), post_b AS (SELECT emp_no,code_,ROW_NUMBER() OVER(PARTITION BY EMP_NO ORDER BY EMP_NO) row_num FROM post_a), post_c(emp_no,code_,row_num) AS (SELECT post_b.emp_no,CAST(post_b.code_ AS VARCHAR(100)) AS code_,post_b.row_num FROM post_b WHERE post_b.row_num = 1 UNION ALL SELECT post_b.emp_no, CAST( post_c.code_|| ',' || post_b.code_ AS varchar(100)) AS code_,post_b.row_num FROM post_b,post_c WHERE post_b.row_num=(post_c.row_num+1) AND post_b.emp_no = post_c.emp_no ) SELECT c.emp_no,c.code_,c.row_num FROM post_c c WHERE NOT EXISTS (SELECT 1 FROM post_c cc WHERE c.emp_no = cc.emp_no AND c.row_num < cc.row_num) ORDER BY c.emp_no ;?
轉載于:https://www.cnblogs.com/Alex-Zeng/p/4926108.html
總結
以上是生活随笔為你收集整理的DB2 SQL 递归实现多行合并的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hibernate注解方式来处理映射关系
- 下一篇: LeetCode Implement Q