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

  • 相关阅读:
    pl2303 驱动
    tomcat 启动脚本
    Linux下Shell命令加减乘除计算
    定时删除文件夹"$1"下最后修改时间大于当前时间"$2"天的文件
    mysql 拼接字符
    jquery iframe父子框架中的元素访问方法
    在线工具
    js对数组对象的操作以及方法的使用
    HTML 设置字体
    10月1号 备忘录
  • 原文地址:https://www.cnblogs.com/TddCoding/p/8000250.html
Copyright © 2011-2022 走看看