Group by子句在Sql Server中没有给出我想要的结果

时间:2013-12-06 05:49:58

标签: sql-server

我想从我的查询中得到pcurrentbalance和ptotal的总和。但是当我在group by子句中添加这两列时,它并没有显示我想要的结果。请问这个查询有什么问题

select  
   a.userid, a.UserNM, a.UserPMobileNo,
   (b.pCurrentBalance + b.pTotalAmt) as [OB] 
into #OB 
from   
     #user a 
left join  
     tbProcTransactions b on a.userid = b.puserid 
group by 
     a.userid, a.UserNM, a.UserPMobileNo, pCurrentBalance, pTotalAmt

我收到每个用户的结果

userid  UserNM  UserPMobileNo   OB
5   API_Ezy_User    9815765543  118740
5   API_Ezy_User    9815765543  118793
5   API_Ezy_User    9815765543  118849
5   API_Ezy_User    9815765543  118968
5   API_Ezy_User    9815765543  118987
5   API_Ezy_User    9815765543  119072
5   API_Ezy_User    9815765543  119098
5   API_Ezy_User    9815765543  119217
5   API_Ezy_User    9815765543  119198
5   API_Ezy_User    9815765543  119360

1 个答案:

答案 0 :(得分:0)

这应该有效:

SELECT  
   a.userid, a.UserNM, a.UserPMobileNo,
   SUM(b.pCurrentBalance + b.pTotalAmt) AS [OB]
INTO #OB 
FROM   
     #user a 
LEFT JOIN
     tbProcTransactions b ON a.userid = b.puserid 
GROUP BY 
     a.userid, a.UserNM, a.UserPMobileNo