• mysql-----代码


    #上机练习4
    #1 查询所在学期id为2的所有男同学的姓名和地址(俩个注意逗号隔开)
    SELECT stuname ,adress FROM student
    WHERE nian_id=1;

    #2查询无电子邮件的学生姓名和年级信息 (is null 代表的是空值)
    SELECT stuname,nian_id FROM student
    WHERE adress IS NULL;
    #where adress='';

    #3 查询所在学期id为2 的学生中所在1990年后出生的学生姓名(year把birthday包裹住只能单一的显示出他的年份其他不显示出来)
    SELECT stuname FROM student
    WHERE nian_id=2 AND YEAR(birthday)>=1990

    #4 查询参加了日期为2013-2-15日的java科目考试的学生成绩信息
    SELECT subid FROM sub_kemu
    WHERE sunname='java'
    SELECT studentresult 成绩 FROM result
    WHERE DATE(examdate)='2016-12-12' AND subno=1001;

    #5查询参加了java科目考试的学员总成绩
    SELECT SUM(studentresult) 总成绩 FROM result
    WHERE subno=1001

    #查询css的平均分
    SELECT AVG(studentresult) 平均分 FROM result
    WHERE subno=1001;

    #上机练习5

    #1 按照出生日期查询学期id为1的学生信息
    SELECT stuname 姓名,stuid 编号 FROM student
    WHERE nian_id=1
    ORDER BY birthday DESC;#(降序)

    #2 按日期先后 成绩由高到低查询编号为1的科目考试成绩信息
    SELECT * FROM result
    WHERE subno=1001
    ORDER BY studentresult DESC,examdate ASC;#(最后再加分号)

    #3 查询2013-3-22参加java考试的前五名
    SELECT studentresult 前五名 FROM result
    WHERE DATE(examdate)='2016-12-12' AND subno=1001
    ORDER BY studentresult DESC
    LIMIT 0,5;

    #4 查询y2课时最多的科目名称
    SELECT subid 科目 FROM sub_kemu
    ORDER BY `subdate` DESC
    LIMIT 1

    #5 查询年纪最小的学生的姓名和所在班级
    SELECT stuname 姓名,nian_id 所在班级,birthday FROM student
    #order by DATEDIFF(now(),birthday)
    ORDER BY birthday DESC
    LIMIT 1

    #6 查询2013--3-22参加考试的最低分出现在哪个科目中

    SELECT subno ,studentresult FROM result
    WHERE DATE(examdate)='2016-12-12'
    ORDER BY studentresult
    LIMIT 0,1

    #7 查询学号10000的学生参加所有的考试信息并按时间的先后顺序显示
    SELECT * FROM result
    WHERE stuno=3
    ORDER BY examdate

    #8 查询10000学生参加过所有的考试中最高分极时间 科目
    SELECT studentresult 成绩,examdate 时间,subno 科目 FROM result
    WHERE stuno=3
    ORDER BY studentresult DESC
    LIMIT 1

    #上机练习6

    #1 查询2016-2-17考试前五名的学生的学号和分数
    SELECT stuid AS 学号,studentresult AS 分数 FROM student
    INNER JOIN result
    WHERE examdate='2016-12-12'
    ORDER BY studentresult DESC
    LIMIT 0,5;

    #将所有女学生按年龄由大到小排列 从第2条记录开始显示6名女学生的姓名 年龄 出生日期 手机号
    SELECT stuname AS 名字, birthday AS 出生日期,phone AS 手机号,CEIL(DATEDIFF(NOW(),birthday)/365) AS 年龄 FROM student
    WHERE sex='女'
    ORDER BY birthday DESC
    LIMIT 1,6
    #按出生年份分组统计学生人数 将各组中的人数达到俩人的年份和人数显示出来
    #2016-12-12考试的所有学员最高分 最低分 平均分
    SELECT MAX(studentresult),MIN(studentresult),AVG(studentresult) FROM result
    WHERE DATE(examdate)='2016-12-12'

    #上机练习4
    #1查询每个年级的总学时数,并按照升序排列
    SELECT gradeId 年级,SUM(classHour) 总学时 FROM `subject`
    GROUP BY gradeId
    ORDER BY SUM(classHour)
    #2查询每个参加考试的学员的平均分
    SELECT studentNo 学号, AVG(studentResult) 平均分 FROM result
    GROUP BY studentNo
    #3查询每门课程的平均分,按降序排列
    SELECT subjectNo 课程编号,AVG(studentResult) 平均分 FROM result
    GROUP BY subjectNo
    ORDER BY AVG(studentResult) DESC
    #4查询每个学生参加的所有考试的总分,并按照降序排列
    SELECT studentNo 学号,SUM(studentResult) 总分 FROM result
    GROUP BY studentNo
    ORDER BY SUM(studentResult) DESC


    #1 查询每个班级的总学时数 并按照升序排列
    SELECT nian_id AS 班级, SUM(`subdate`) 成绩和 FROM sub_kemu
    GROUP BY nian_id
    ORDER BY SUM(`subdate`)


    #2 查询每个参加考试的学员的平均分
    SELECT stuno 学员id, AVG(studentresult) FROM result
    GROUP BY stuno

    #3 查询每门课程的平均分 并按降序排列
    SELECT subno AS 每门课程, AVG(studentresult) FROM result
    GROUP BY subno
    ORDER BY AVG(studentresult)

    #4 查询每个学生的参加所有考试的总分 并按照降序排列
    SELECT SUM(studentresult) ,stuno FROM result
    GROUP BY stuno
    ORDER BY SUM(studentresult)

    #上机练习8
    #查询所有科目的考试成绩信息 (某些科目可能从没有被考试过)
    SELECT s.sunname,r.studentresult FROM sub_kemu s
    LEFT JOIN result r
    ON s.subid=r.subno

    #查询从未考试的科目
    SELECT s.sunname,r.studentresult FROM sub_kemu s
    LEFT JOIN result r
    ON s.subid=r.subno
    #where r.studentresult is null; 不能拿成绩 做条件 有的人缺考
    WHERE r.examdate IS NULL;

    SELECT sunname, studentresult FROM sub_kemu s
    LEFT JOIN result r
    ON s.subid= r.subno
    WHERE r.examdate IS NULL;

  • 相关阅读:
    PHP 5.5.0 Alpha5 发布
    Ubuntu Touch 只是另一个 Android 皮肤?
    MariaDB 10 已经为动态列提供文档说明
    Percona Toolkit 2.1.9 发布,MySQL 管理工具
    Oracle Linux 6.4 发布
    Ruby 2.0.0 首个稳定版本(p0)发布
    Apache Pig 0.11.0 发布,大规模数据分析
    Node.js 0.8.21 稳定版发布
    红薯 MySQL 5.5 和 5.6 默认参数值的差异
    Django 1.5 正式版发布,支持 Python 3
  • 原文地址:https://www.cnblogs.com/cxiaojie/p/12727596.html
Copyright © 2020-2023  润新知