简体   繁体   English

联合查询总和-语法错误-SQL Server

[英]Sum on Union query - syntax error - SQL Server

I am trying to do sum on union query and I am getting 我正在尝试对联合查询做总和,

Syntax error: incorrect syntax near ')' 语法错误:“)”附近的语法不正确

Code: 码:

select 
    sum(rate) 
from 
    (select 
         sum(UnitsDelivered * Rate) as rate 
     from 
         Reimbursement_EBSUtilization 
     where 
         PRR_Id = 1 

     UNION ALL

     select 
         sum(Reimbursement_CDSUtilization.Rate * CDSUtilization.UnitsDelivered) as rate 
     from 
         Reimbursement_CDSUtilization
     left join 
         CDSUtilization on Reimbursement_CDSUtilization.CDSU_Id = CDSUtilization.Id
     where 
         Reimbursement_CDSUtilization.PRR_Id = 270
)--syntax error is showing here

I am sure I am missing something very small but couldn't figure out 我确定我遗漏了一些很小的东西,但无法弄清楚

You need to alias the subquery: 您需要给子查询加上别名:

select sum(rate) from 
(
  select sum(UnitsDelivered*Rate) as rate 
   from Reimbursement_EBSUtilization 
   where PRR_Id =1 

   UNION ALL

  select sum(Reimbursement_CDSUtilization.Rate * CDSUtilization.UnitsDelivered) as rate 
  from Reimbursement_CDSUtilization
  left join CDSUtilization on Reimbursement_CDSUtilization.CDSU_Id = CDSUtilization.Id
  where Reimbursement_CDSUtilization.PRR_Id = 270
) as t -- <-- use alias here

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM