简体   繁体   English

将行转置为db2中的列

[英]transpose rows to columns in db2

I have a query output as below 我有如下查询输出

Customer policytype plan amount 

Sam      ulip       P1   250

Sam      ulife      u1   435

Sam      Ulip       P2   370

Hazar    Ulip       P1   679

Hazar    Ulife      u1   567

And so on .... 等等 ....

I need to transpose above output as follows 我需要如下转置上面的输出

Customer ulip ulife

Sam      250  435

Sam      370  Null 

Hazar    679  567

Can someone help me to achieve above result in db2 有人可以帮助我在db2中实现以上结果吗

Use conditional Aggregate 使用conditional Aggregate

SELECT customer,
        Max(CASE WHEN policytype = 'ulip' THEN amount END) AS ulip,
        Max(CASE WHEN policytype = 'ulife' THEN amount END) AS ulife
FROM   Youratable
GROUP  BY customer,
            CASE WHEN plan IN ( 'p1', 'u1' ) THEN 1 ELSE 0 END 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM