设有课程表(课程号,课程名,开课学期)和选课表(学号,课程号,成绩),现要利用开窗函数查询每门课程的课程名、开课学期及选该门课的学生人数(不包括没人选的课程)。请补全下列语句: SELECT DISTINCT 课程名,开课学期,COUNT(*)OV

admin2021-06-28  44

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

选项

答案PARTITION

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

最新回复(0)