2015-06-19 84 views
0

我與這個錯誤掙扎,當我從爲了改變聲明組,這是獲得和F能夠滿足查詢的所有記錄的目標。未包含在聚合函數或GROUP BY子句

我有兩個表,ServiceConsumer_T和ServiceUsage_t,在ServiceConsumer_t都是消費明細:

ID          Name 
032159DA-9BD6-49F0-8D12-5806DD17AE4B  40791010 
05EECE4D-9E46-420A-9EE8-1605A34A1BE9  20002810 
07C9EDB9-CF1C-4F32-83D5-4BE0293E626F  20019010 
0AB09B43-F695-4314-9674-A6B34254A1F0  20002700 
0FE8F929-D33C-4CA7-A0FA-0C804EDFE29C  20002210 
在ServiceUsage_t

是移動客戶:

CostCenterPath       Cardinality 
{032159DA-9BD6-49F0-8D12-5806DD17AE4B} 282 
{032159DA-9BD6-49F0-8D12-5806DD17AE4B} 9 
{032159DA-9BD6-49F0-8D12-5806DD17AE4B} 555 
{05EECE4D-9E46-420A-9EE8-1605A34A1BE9} 200 
{05EECE4D-9E46-420A-9EE8-1605A34A1BE9} 200 
{05EECE4D-9E46-420A-9EE8-1605A34A1BE9} 3 
{05EECE4D-9E46-420A-9EE8-1605A34A1BE9} 3 
{07C9EDB9-CF1C-4F32-83D5-4BE0293E626F} 1500 
{07C9EDB9-CF1C-4F32-83D5-4BE0293E626F} 1 
{07C9EDB9-CF1C-4F32-83D5-4BE0293E626F} 1 
{07C9EDB9-CF1C-4F32-83D5-4BE0293E626F} 243 

這是查詢我正在利用:

Select ServiceConsumer_T.Name, ServiceUsage_T.Cardinality from ServiceConsumer_T  
left join ServiceUsage_T 
on ServiceConsumer_T.ID=ServiceUsage_T.CostCenterPath 

order by ServiceConsumer_T.Name 

而且我得到所有記錄排序名字,但是當我從順序更改爲組我得到的錯誤:

Column 'ServiceUsage_T.Cardinality' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

誰能幫我實現這一目標?

+0

你試圖得到什麼結果? – Mureinik

回答

2

如果你被列組,所有其他的必須進行彙總。你想總結一下,所以使用那個聚合函數

Select c.Name, sum(u.Cardinality) 
from ServiceConsumer_T c 
left join ServiceUsage_T u on c.ID = u.CostCenterPath 
group by c.Name 
+0

喜爾根,非常感謝您爲您的PROMT答覆的,fullfit我的要求。 – Carlos

相關問題