[英]DB2 SQL CONCAT AND COUNT
I was trying to combine the result as below:我试图将结果组合如下:
Current Result:当前结果:
BOOKING_NUM | TYPE 1 | TYPE 2
Ref1 | 3 | (null)
Ref1 | (null) | 6
Expected Result:预期结果:
BOOKING_NUM | TYPE 1 | TYPE 2
Ref1 | 3 | 6
I amusing the following query:我很有趣以下查询:
SELECT
BEC.BOOKING_NUM
,CASE WHEN BEC.TYPE = '1' THEN COUNT(BEC.TYPE) END "Type 1"
,CASE WHEN BEC.TYPE = '2' THEN COUNT(BEC.TYPE) END "Type 2"
FROM DB.EXCOM BEC
WHERE
BEC.BOOKING_NUM = 'Ref1'
GROUP BY
BEC.TYPE,
BEC.BOOKING_NUM
ORDER BY
BEC.BOOKING_NUM
I would love to seek for any suggestion.我很想寻求任何建议。 Thank you very much.非常感谢。
Tony托尼
You need to apply your condition within max()
您需要在max()
内应用您的条件
SELECT
BEC.BOOKING_NUM
,max(CASE WHEN BEC.TYPE = '1' THEN BEC.TYPE END) "Type 1"
,max(CASE WHEN BEC.TYPE = '2' THEN BEC.TYPE END) "Type 2"
FROM DB.EXCOM BEC
WHERE
BEC.BOOKING_NUM = 'Ref1'
GROUP BY
BEC.BOOKING_NUM
ORDER BY
BEC.BOOKING_NUM
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.