查处每门功课前两名学生的名字,课程名,成绩

Table:

Student(Sno,Sname,Sage,Ssex)
Course(Cno,Cname,Teacher)
SC(Sno,Cno,Grade)

SQL:

SELECT S.Sname ,C.Cname,D.Grade
FROM Student S,Course C,
(  

  --这部分是关键:

  SELECT *

  FROM dbo.SC SCA

  WHERE grade IN
  (
    SELECT DISTINCT TOP 2 grade

    FROM SC
    WHERE SCA.Cno=Cno
    ORDER BY Grade DESC
  )

) AS D
WHERE S.Sno=D.Sno AND C.Cno=D.Cno
ORDER BY D.Cno ASC

时间: 2024-10-10 16:26:41

查处每门功课前两名学生的名字,课程名,成绩的相关文章

案例:利用累加器计算前N个学生的总成绩和平均成绩

1 /* 2 *录入N个学生的成绩,并求出这些学生的总成绩和平均成绩! 3 * */ 4 import java.util.Scanner; 5 6 public class SumTest{ 7 public static void main(String args[]){ 8 9 int i = 0; 10 int sum = 0; 11 System.out.println("请输入总学生的数量:"); 12 Scanner sc = new Scanner(System.in

【sql 练习题 36,37】查询每门功成绩最好的前两名,统计每门课程的学生选修人数(超过 5 人的课程才统计)

题目36:查询每门功成绩最好的前两名 分析:先用自己交自己,条件为a.courseid = b.courseid and a.score<b.score,其实就是列出同一门课内所有分数比较的情况. 通过a.studentid和a.courseid可以联合确定这个同学的这门课的这个分数究竟比多少个其他记录高/低, 如果这个特定的a.studentid和a.courseid组合出现在这张表里的次数少于2个,那就意味着这个组合(学号+课号+分数)是这门课里排名前二的. 所以下面这个计算中having

使用文档对象在页面上创建学生信息表。 信息表包括学号、姓名、性别、电子邮件、联系电话、个人主页和联系地址, 信息表内容通过表单输入,提交前先使用正则表达式进行验证,联系地址不能超过20个字符, 每输入一名学生的信息,提交后,表格增加一行,表格不能被选择、复制。

<!DOCTYPE html><html>    <head>        <meta charset="UTF-8">        <title></title>    </head>    <!--        描述:使用文档对象在页面上创建学生信息表.        信息表包括学号.姓名.性别.电子邮件.联系电话.个人主页和联系地址,        信息表内容通过表单输入,提交前先使用

C# 根据文件流byte[]数组前两位 判断文件类型 附 文件扩展名说明

判断文件真实的类型,不是通过扩展名来判断:而是通过byte[]数组前两位编码来判断, 原文连接 https://www.cnblogs.com/Percy_Lee/p/4980451.html /// <summary> /// 判断文件格式 /// http://www.cnblogs.com/babycool /// </summary> /// <param name="filePath"></param> /// <retu

前两天有人问怎么取得一个目录下的文件,下面就是例子

<%@ Language=VBScript %> <% '================================================================ '函数名称:FileList '函数功能:列出目录下所有文件 '主要参数说明: '1--FolderUrl 虚拟路径 不可为空 '2----FileExName 文件扩展名 '函数返回值:收文记录 '====================================================

c语言:写一个函数建立一个有3名学生数据的单向动态链表

写一个函数建立一个有3名学生数据的单向动态链表. 解:程序: #include<stdio.h> #include<stdlib.h> #define LEN sizeof(struct Student) struct Student { long num; float score; struct Student *next; }; int n; struct Student *creat(void)//定义函数返回一个指向链表头的指针 { struct Student *head

php如何获取到前两个页面的url

自己在学习过程中也遇到了类似的问题: 比如,后台是想做成这样子的: 但是实际则是这样的: 解决方法: 通过表单隐藏控件 <input type="hidden" name="prevurl" value="<?php echo $_SERVER['HTTP_REFERER']?>"> 这样$_SERVER['HTTP_REFERER']的值就暂时存到了$_POST[prevurl]里. 暂时没想到更好的方法. php如何获

BestCoder Round #4 前两题 hdu 4931 4932

第一题太水了.. 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 int a[6]; 7 int main(){ 8 int cas; 9 scanf( "%d", &cas ); 10 while( cas-- ){ 11 for( int i = 0; i <

WORD中如何让前两页不显示页码

WORD中如何让前两页不显示页码   上稿人:ojn 点击率: 15191   我们有时在用word编辑文档时,会遇上第一.二页无需显示页码,第三页才是正文的第一页时,该如何正确插入页码呢? 以word 2010为例,方法如下: 假如第1-2页无页码,第3页开始插入页码,起始页为1. 1.将光标定位在第2页末尾处,点击“页面布局——(页面设置)分隔符——(分节符)下一页” 2.双击第3页的页脚处,进入页眉和页脚的编辑状态,点击工具栏中的“链接到前一条页眉”按钮,使其使其退出高亮状态. 3.点击“