设有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩),现要利用开窗函数查询每个学生的姓名、所在系及选课门数(不包括没选课的学生)。请补全下列语句: SELECT DISTINCT姓名,所在系,COUNT(*)【4】AS选课门数FROM学生表T1

admin2020-05-25  156

问题 设有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩),现要利用开窗函数查询每个学生的姓名、所在系及选课门数(不包括没选课的学生)。请补全下列语句:
SELECT DISTINCT姓名,所在系,COUNT(*)【4】AS选课门数FROM学生表T1 JOIN选课表T2 ON T1.学号=T2.学号

选项

答案OVER(PARTITION BY T1.学号)OVER(PARTITION BY T2.学号)

解析 开窗函数公式:函数名(列)OVER(选项)。OVER关键字表示把函数当成开窗函数而不是聚合函数。SQL SERVER 2005/2008支持两种开窗函数,分别为:排名开窗函数和聚集开窗函数。聚合开窗函数只能使用PARTITION BY子句不带任何语句,ORDER BY不能与聚合开窗函数一同使用。很多聚合函数都可以用作窗口函数的运算,如SUM、AVG、MAX、MIN和COUNT。
转载请注明原文地址:https://kaotiyun.com/show/soID777K
0

相关试题推荐
最新回复(0)