首页 > 其他 > 详细

case when 与group by 联用问题

时间:2014-12-05 22:34:34      阅读:1042      评论:0      收藏:0      [点我收藏+]

今天遇到一个问题,以下是两种查询方式,但是查询出来的结果不一样,第二种查询出来的结果是正确的,如果将第一种查询的lendrequestId去掉,查询结果就会和第二种一样,这是为什么?

1.SELECT  rr.lendRequestId,
 (case when rr.repayState = ‘OVER_DUE_REPAID‘ then sum(rr.repayPrincipal) end) as 逾期还款本金
FROM dwloanrepayrecordfact rr
GROUP BY rr.lendRequestId
2.SELECT rr.lendRequestId, sum(rr.repayPrincipal)
FROM dwloanrepayrecordfact rr
WHERE rr.repayState = ‘OVER_DUE_REPAID‘
GROUP BY rr.lendRequestId

 

case when 与group by 联用问题

原文:http://www.cnblogs.com/rufengboyi/p/4147518.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!