zoukankan      html  css  js  c++  java
  • 学生成绩信息表

    请编写T-SQL语句实现如下功能

    --check database whether exist, if true,drop database -- if exists (select * from sysdatabases where name = 'Student')  Drop database Student else  Create database Student

    --create table-- Use Student Create table Member(  MID char(10) primary key,  MName char(50) not null )

    Create table F(  FID char(10) primary key,  FName char(50) not null )

    Create table Score(  SID int identity(1,1) primary key,  FID char(10) foreign key(FID) references F(FID),  MID char(10) foreign key(MID) references Member(MID),  Score int not null ) --insert data into table F INSERT INTO F(FID,FName)VALUES('F001','语文')  INSERT INTO F(FID,FName)VALUES('F002','数学')  INSERT INTO F(FID,FName)VALUES('F003','英语')  INSERT INTO F(FID,FName)VALUES('F004','历史')  --insert data into table Member INSERT INTO Member(MID,MName)VALUES('M001','张萨')  INSERT INTO Member(MID,MName)VALUES('M002','王强')  INSERT INTO Member(MID,MName)VALUES('M003','李三')  INSERT INTO Member(MID,MName)VALUES('M004','李四')  INSERT INTO Member(MID,MName)VALUES('M005','阳阳')  INSERT INTO Member(MID,MName)VALUES('M006','虎子')  INSERT INTO Member(MID,MName)VALUES('M007','夏雪')  INSERT INTO Member(MID,MName)VALUES('M008','璐璐')  INSERT INTO Member(MID,MName)VALUES('M009','珊珊')  INSERT INTO Member(MID,MName)VALUES('M010','香奈儿') --insert data into table Score INSERT INTO Score(FID,MID,Score)VALUES('F001','M001',78)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M001',67)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M001',89)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M001',76)  INSERT INTO Score(FID,MID,Score)VALUES('F001','M002',89)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M002',67)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M002',84)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M002',96)  INSERT INTO Score(FID,MID,Score)VALUES('F001','M003',70)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M003',87)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M003',92)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M003',56)  INSERT INTO Score(FID,MID,Score)VALUES('F001','M004',80)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M004',78)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M004',97)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M004',66)  INSERT INTO Score(FID,MID,Score)VALUES('F001','M006',88)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M006',55)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M006',86)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M006',79)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M007',77)  INSERT INTO Score(FID,MID,Score)VALUES('F003','M008',65)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M007',48)  INSERT INTO Score(FID,MID,Score)VALUES('F004','M009',75)  INSERT INTO Score(FID,MID,Score)VALUES('F002','M009',88) --查询各个学生语文,数学,英语,历史课程成绩 select b.MName 姓名, 语文 = SUM(case when c.FName = '语文' then a.Score end), 数学 = SUM(case when c.FName = '数学' then a.Score end), 英文 = SUM(case when c.FName = '英语' then a.Score end), 历史 = SUM(case when c.FName = '历史' then a.Score end)  from Score a inner join Member b on a.MID = b.MID inner join F c on a.FID = c.FID group by b.MName --查询四门课中成绩低于70分的学生及相对应课程名和成绩-- select 姓名 = (select MName from Member where Member.MID = Score.MID), 课程 = (select FName from F where F.FID = Score.FID), 成绩 = Score.Score from Score where Score < 70 --创建存储过程,分别查询参加1、2、3、4门考试及没有参加考试的学生名单,要求显示姓名、学号。 select 姓名 = (select MName from Member where MID = Score.MID), 学号 = (select MID from Member where MID = Score.MID) from Score group by MID having count(*) = 1

  • 相关阅读:
    很简单的企业管理器我写程序的方式,几个自定义控件。
    当OO遇到了持久化?!
    [自定义服务器控件] 第一步:文本框。
    [面向过程——老酒换新瓶] (一)开篇:是面向过程还是面向对象?
    个人理财小助手 —— 设计思路、功能说明
    《Head First 设计模式》 终于出中文版了。
    其实添加数据也可以这样简单——表单的第一步抽象(针对数据访问层)《怪怪设计论: 抽象无处不在 》有感
    基类、接口的应用——表单控件:一次添加、修改一条记录,一次修改多条记录。(上)
    其实添加数据也可以这样简单——表单的第三步抽象(针对UI及后置代码)
    转帖:客户端表单通用验证checkForm(oForm) js版
  • 原文地址:https://www.cnblogs.com/TddCoding/p/8000250.html
Copyright © 2011-2022 走看看