如何在案例陈述中给出总和陈述条件?

时间:2019-07-02 13:12:47

标签: sql-server

我想在CASE语句的ELSE部分中使用sum函数。我需要提供SUM函数条件,但无法这样做。

我试图在sum函数中使用GROUP BY函数,但是它不起作用。

CASE WHEN SectionCrossList = NULL THEN InstructorCredits ELSE InstructorCredits/Sum(Instructorcredits) GROUP BY (AcademicYear,SectionCrossList) END NumCreditSplit
  

消息156,级别15,状态1,第220行在关键字“ GROUP”附近的语法错误。
  消息102,级别15,状态1,第221行'NumCreditSplit'附近的语法不正确。

2 个答案:

答案 0 :(得分:0)

您应该使用CTE或窗口函数sum

答案 1 :(得分:0)

SELECT AcademicYear,SectionCrossList,
        CASE 
            WHEN SectionCrossList = NULL 
            THEN 
                InstructorCredits 
            ELSE 
                InstructorCredits/Sum(Instructorcredits)
            end NumCreditSplit
     FROM <yourTable>
     group by AcademicYear,SectionCrossList