Sql server SQL Server中的多个聚合函数

Sql server SQL Server中的多个聚合函数,sql-server,Sql Server,我需要查询[贡献]。我使用了这个查询: with ttt as ( select (DYG.U_StyleId)[DYG Style] ,Max(O1.CardCode) [Party Group Code], MAX(O1.CardName) [Party Group Name] ,MAX(OR1.DocDate) [Date] ,sum(CONVERT(NUMERIC(15,2),(RDR1.PriceBefDi*RDR1.Quantity)))

我需要查询[贡献]。我使用了这个查询:

with ttt as     
(    
select 
(DYG.U_StyleId)[DYG Style]    
 ,Max(O1.CardCode) [Party Group Code],
MAX(O1.CardName) [Party Group Name]    
,MAX(OR1.DocDate) [Date]    
,sum(CONVERT(NUMERIC(15,2),(RDR1.PriceBefDi*RDR1.Quantity))) [JobAmount]    
,CONVERT(NUMERIC(15,2),SUM(RDR1.Quantity)) [Mtr]    
,CONVERT(NUMERIC(15,2),SUM(RDR1.U_Pcs))[Pcs]    
,(select sum(RDR1.PriceBefDi*RDR1.Quantity) from RDR1)  tqty    

from 
ORDR OR1    
left join RDR1 on RDR1.DocEntry = OR1.DocEntry     
left join OITM on RDR1.ItemCode = oitm.ItemCode    
LEFT JOIN OCRD ON OCRD.CardCode = OR1.CardCode    
LEFT JOIN OCRG ON OCRG.GroupCode = OCRD.GroupCode    
LEFT JOIN OCRD O1 ON O1.U_BCode = OCRD.U_GrpCod
LEFT JOIN 
( SELECT U_StyleId FROM RDR1 WHERE U_StyleId in 
('BLOOM','BLOOMING','DYD','DYD-R','DYED','Ex.CLR.','RAINBOW'))
 DYG ON DYG.U_StyleId = RDR1.U_StyleId    
    group by 
       DYG.U_StyleId    
                     ) 
   select 
    Style, [Party Group Code],
    [Party Group Name], JobAmount,
    (sum(JobAmount) / tqty * 100) [Contribution],
    [Date], [Pcs] 
from
    ttt 
  group by 
        Style 
我需要上一份工作的总额除以上面的质量。 但它显示了这个错误

'列'ttt.Party Group Code'在选择列表中无效,因为它未包含在聚合函数或Group BY子句中。'

请帮助我查询正确的[Contribution]金额。

尝试以下操作:

select Style,[Party Group Code],[Party Group Name],JobAmount,[Date],[Pcs],
        100.0 * (sum(JobAmount) OVER (PARTITION BY Style))/tqty [Contribution]
    from ttt;