zoukankan      html  css  js  c++  java
  • mysql--学生课程成绩表

    创建表student:

    CREATE TABLE `student` (
    	`sid` INT(11) NOT NULL AUTO_INCREMENT,
    	`sname` VARCHAR(20) NOT NULL DEFAULT '0',
    	`sage` INT(11) NOT NULL DEFAULT '0',
    	`sex` VARCHAR(10) NOT NULL DEFAULT '0',
         `sdept` VARCHAR(20) NULL DEFAULT NULL,
    PRIMARY KEY (`sid`)
    )
    COLLATE='utf8_general_ci' 
    ENGINE=InnoDB

      

    创建表course: 

    CREATE TABLE `course` (
    	`cid` INT(11) NOT NULL AUTO_INCREMENT,
    	`cname` VARCHAR(20) NOT NULL DEFAULT '0',
    	`ccredit` INT(11) NOT NULL DEFAULT '0',
    	`semester` INT(11) NOT NULL DEFAULT '0',
    	`period` INT(11) NOT NULL DEFAULT '0',
    	PRIMARY KEY (`cid`)
    )
    COLLATE='utf8_general_ci'
    ENGINE=InnoDB
    AUTO_INCREMENT=3;
    

      

    创建表sc:

    CREATE TABLE `sc` (
    	`sid` INT(11) NOT NULL DEFAULT '0',
    	`cid` INT(11) NOT NULL DEFAULT '0',
    	`score` INT(11) NULL DEFAULT NULL,
    	PRIMARY KEY (`sid`, `cid`),
    	CONSTRAINT `FK_sc_course` FOREIGN KEY (`cid`) REFERENCES `course` (`cid`),
    	CONSTRAINT `FK_sc_student` FOREIGN KEY (`sid`) REFERENCES `student` (`sid`)
    )
    COLLATE='utf8_general_ci'
    ENGINE=InnoDB;
    

      

    查询:

    1. 计算机系人名字和年龄:

    select sname, sage from student where sdept="computer"
    

    2. 数学成绩在80到100之间的名字和学科和分数:

    select sname,cname,score from student s, course c, sc where s.sid=sc.sid and c.cid=sc.cid and sc.score between 80 and 100 and cname="数学"
    

    3. 每个系多少学生:

    select count(sdept),sdept from student group by sdept
    

    4. 课程1比课程2分数高的学号:

    select a.sid  from(select sid, score from sc where cid=1)a, (select sid,score from sc where cid=2)b
    where a.score>b.score and a.sid=b.sid
    

    5. 平均分大于80分的学号和平均分:

    select sid, avg(score) from sc group by sid having avg(score)>70
    

    6. 所有学生的学号, 姓名, 选课数, 总成绩:

    select student.sid, sname, count(sc.cid),sum(sc.score) from student left outer join sc on student.sid=sc.sid group by student.sid;
    

    7. 

      

      

  • 相关阅读:
    scikit-learn机器学习(四)使用决策树做分类
    从最大似然到EM算法浅解
    scikit-learn机器学习(三)多项式回归(二阶,三阶,九阶)
    一个打印调试信息的样例
    AppFuse 3的乱码问题
    垂直和水平居中方法小结
    Hero In Maze
    Highmaps的天津地图数据JSON格式
    互联网公司面试中常常被问的问题
    MySQL(6)--复制,docker容器中
  • 原文地址:https://www.cnblogs.com/wujixing/p/5442125.html
Copyright © 2011-2022 走看看