【发布时间】:2016-03-14 16:38:26
【问题描述】:
请看下面的报告(突出显示的值由于某种原因重复)
Query:
SELECT DISTINCT EXSS_Year, STEN_Student_ID, EXSS_Student_ID,
STUD_Forename_1, STUD_Surname, EXSS_Act_Grade,
COUNT(Grade) AS Count_Grade, COUNT(CourseType)AS CountType,
EXSS_Issued_Date, EXSS_Cand_No, EXSS_Awarding_Body, Awarding_body,
EXSS_Provision_Code, PRPH_ML2, PRPH_ML1, Course, PRPH_Title,
Section, EXSS_Provision_Instance, EXSS_Subject_Code, EXSJ_Description, CourseType, Grade
FROM FS_Exams_English
GROUP BY EXSS_Year, STEN_Student_ID, EXSS_Student_ID,
STUD_Forename_1, STUD_Surname, EXSS_Act_Grade,
EXSS_Issued_Date, EXSS_Cand_No, EXSS_Awarding_Body,
Awarding_body, EXSS_Provision_Code, PRPH_ML2,
PRPH_ML1, Course, PRPH_Title, Section,
EXSS_Provision_Instance, EXSS_Subject_Code,
EXSJ_Description, CourseType, Grade
ORDER BY STEN_Student_ID
基兰雪莉的样本数据:
Forename Surname Count_Grade CountType Section Course PRPH_Title EXSJ_Description CourseType Grade
Keelan Shelly 0 0 14-16 27448/A01 English E3 FS (14-16) (Pearson) E3 ENGLISH FUNCTIONAL SKILLS WRITING NULL NULL
Keelan Shelly 0 1 CSTR 27239/A01 English L1 FS (for CSTR) (CG) FUNCTIONAL SKILLS ENGLISH Overall NULL
Keelan Shelly 0 1 14-16 27448/A01 English E3 FS (14-16) (Pearson) E3 ENGLISH FUNTIONAL SKILLS READING Reading NULL
告诉我如何避免这种情况。
【问题讨论】:
-
这令人困惑。您的查询中有一个
distinct和一个group by子句。要么我会说。那么为什么不从查询中删除distinct,因为您的查询中有一个聚合函数,例如COUNT()。 -
Ralph - 我刚刚删除了 DISTINCT 并刷新了报告,但仍然没有任何变化..我看到重复...
-
count(Grade) as Count_Grade,和count(CourseType) as CountType,似乎都没有出现在这份报告中。您确定此报告只是它的汇总,而不是该报告的深入细节吗?尝试在 SSMS 中运行查询并自己将结果与报告进行比较。 -
您能否显示来自查询中的重复行之一(如 Keelan)的数据?我的猜测是 Grade 是不同的(导致重复),但报告上的数据是 0,所以它看起来也不对。
-
我删除了详细信息组,现在没有看到任何重复项...
标签: reporting-services count group-by ssrs-2008 distinct