編輯:數據庫 - SQL服務器2014不能上個欄目組表
我試圖計算日百分比的學生 「有」這樣的:
但我這樣得到結果:
僅限計算百分比我無法根據類對行進行分組。 帶有OUT百分比計算,結果是分組精細
我的學生考勤表..
這是我的查詢...
SELECT CM.ClassName ,SB.SubjectName ,
count(sa.Day14) Total,
sum(case when sa.Day14 = 'P' then 1 else 0 end) Present,
sum(case when sa.Day14 = 'A' then 1 else 0 end) Absent,
(SELECT CAST(
CASE
WHEN count(sa.Day14) = 0
THEN 0
ELSE (sum(case when Day14 = 'P' then 1 else 0 end)* 100)/(count(Day14))
END AS nvarchar(100))) as [Present%],
AttendanceDate from studentattendance SA
inner join studentmaster SM on SA.StudentID = SM.ID
join ProfessorMaster p on SA.ProfessorID = p.Id
join Classmaster CM on SA.ClassID = CM.ID
inner join SubjectMaster SB on SA.SubjectID = SB.ID
where
sa.ProfessorID = '36' and sa.AttendanceDate = '2015-09' and SA.AdminId ='29'
group by CM.ClassName, SB.SubjectName, SA.AttendanceDate,sa.Day14
什麼我失蹤?
請創建sqlfiddle或在樣本數據添加問題插入腳本 – DarkKnight
一般GROUP BY規則說: 「如果指定了GROUP BY子句,在SELECT列表中的每個列引用必須要麼確定分組列或成爲一個函數的參數。「即,從GROUP BY中刪除sa.Day14列。 – jarlh