Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL如何按、不同、求和进行分组_Sql_Ms Access - Fatal编程技术网

SQL如何按、不同、求和进行分组

SQL如何按、不同、求和进行分组,sql,ms-access,Sql,Ms Access,我对SQL非常陌生,所以我为这个毫无疑问的新问题道歉。我正在做一个关于SQL的大学模块 我有一张像这样的桌子 ID Learning Area Course Name Qualification Level Enrolments 1 Business & Management Accounting (AAT) Certificate Two 20 2 Business &am

我对SQL非常陌生,所以我为这个毫无疑问的新问题道歉。我正在做一个关于SQL的大学模块

我有一张像这样的桌子

ID  Learning Area           Course Name                  Qualification    Level Enrolments
1   Business & Management   Accounting (AAT)              Certificate      Two   20
2   Business & Management   Accounting (AAT)              Diploma          Three 10
3   Business & Management   Accounting (AAT)              Extended Diploma Four  13
4   Health & Childcare  Anatomy, Physiology and Pathology Diploma          Two   19

(对于这张图片,我深表歉意。我不知道如何将表格添加到我的问题中,因此我们也非常感谢您的帮助。)

这就是我被赋予的任务:

唯一的课程名称,显示每个名称中的字母数和注册总数

以下是我的尝试:

SELECT DISTINCT [Course Name], Len([Course Name]) AS Letters, SUM (Enrolments) AS Total_Enrolments
FROM DataFile
GROUP BY [Course Name], Enrolments;
然而,我得到的回报是这个

Course Name                       Letters   Total_Enrolments
Accounting (AAT)                      16    10
Accounting (AAT)                      16    13
Accounting (AAT)                      16    20
Anatomy, Physiology and Pathology     33    19
Animal Care                           11    12
当我加和时,“课程名称”不再是不同的


我们将非常感谢任何朝着正确方向的帮助或推动

您应仅按课程名称进行聚合:

SELECT [Course Name], LEN([Course Name]) AS Letters, SUM (Enrolments) AS Total_Enrolments
FROM DataFile
GROUP BY [Course Name];

请注意,
DISTINCT
在这里也是多余的,不需要,因为按课程名称分组已经确保每个课程在结果集中只出现一次。

您应该只按课程名称进行聚合:

SELECT [Course Name], LEN([Course Name]) AS Letters, SUM (Enrolments) AS Total_Enrolments
FROM DataFile
GROUP BY [Course Name];

请注意,
DISTINCT
在这里也是多余的,也不是必需的,因为按课程名称分组已经确保每个课程在结果集中只出现一次。

非常感谢您,再次感谢您讲述DISTINCT@JamesJPN谢谢,如果您可以点击左边的绿色复选标记接受此答案,我们将不胜感激。非常感谢您,再次感谢您讲述DISTINCT@JamesJPN谢谢,如果您可以通过点击左边的绿色复选标记来接受此答案,我们将不胜感激。