day1

学生表操作:

1. 查询出班级205有多少个男生

2. 查询出名字为4个字的所有学生信息(编号、姓名,年龄,班级)

3. 查询出所有姓王的学生信息(编号、姓名,年龄,班级)

4. 查询出班级编号为201,202,203的女生总人数

5. 查询出学号整十的所有女生信息(姓名、年龄、个人简介)

6. 删除301班级中年龄在23岁以上的学生信息

7. 把一个叫'卫然'的学生的姓别改成女的

8. 把401班级中的姓名为'吴杰'的学生信息删除

9. 计算305班中所有学生的平均年龄以及他们的最大年龄和最小年龄

10. 查询401,402,403,404,405中所有学生的年龄平均值

11. 查询出所有学生中"白"的学生信息,并对他们使用年龄进行升序排列

12. 添加以下学生记录到数据表中
         姓名     年龄    性别    班级   个性签名
         张三丰    22      1      301   我是武当老板
         张翠山    21      1      302   我是武当老板的五弟子
         张无忌    20      1      302   明教老板

13. 查询年龄在18-20之间的姓李的女生

14. 查询年龄在18-20之间的所有女生,并按照编号进行降序排序

15. 查询出301,302,303,304,305,306中每个班级总人数。

成绩表操作

16. 查询出学号为9的学生的总成绩

17. 查询出课程编号为4的课程平均成绩

18. 查询出学号为6的学生的所有成绩,并显示对应的课程编号。

19. 查询出课程编号为20的课程成绩,并进行分数的降序排列,显示10个成绩即可。

20. 查询出学号为1,2,3,4,5,6这几个学员的平均成绩。

21. 查询出证成绩表中每个学科的平均成绩。

day2

python操作数据库

1. 查询student表的所有记录

2. 查询student表的第2条到第4条记录

3. 查询所有学生的学号(id)、姓名(name)和报读课程(department)的信息

4. 删除305班年龄最小的学生

5. 修改id为66的学员的姓名为男

SQL语句编写
    
     1. 查询Django课程和Django项目的所有学生的信息[学号,姓名,年龄,成绩]

mysql> select a.id,name,age,achievement
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where c.course like 'Django%';

2. 查询id=5的老师的所有学生信息[学号、姓名、年龄]

mysql> select a.id,a.name,a.age
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> left join lecturer as d
-> on c.lecturer_id = d.id
-> where d.id =5;

3. 查询306班、307、308班中成绩及格的学生

mysql> select a.name,a.age,a.sex,c.course,b.achievement
-> from student as a
-> left join achievement as b
-> on a.id= b.sid
-> left join course as c
-> on b.cid = c.id
-> where a.class in (306,307,308) and b.achievement >=60;

4. 查询python成绩及格的所有学生信息[学号、姓名、年龄、班级]

mysql> select a.id,a.name,a.age,a.class,b.achievement
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where c.course='python' and b.achievement >=60;

5. 查出所有女生的平均成绩和报读课程。

mysql> select c.course,avg(b.achievement)
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where a.sex =2 group by c.course;

6. 查询出女生人数最多的5个课程。

mysql>select c.course,c.id,count(a.id)
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where a.sex =2 group by c.course order by count(a.id) desc, c.id asc limit 5;

7. 查询出报读flask课程的学生中女生的数量

mysql> select count(a.id)
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where c.course ='flask' and a.sex =2;

8. 查询出 赵华 报读的课程信息[ 上课老师名字,课程分数,平均分 ]

mysql> select d.name,c.course,b.achievement,avg(b.achievement)
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> left join lecturer as d
-> on c.lecturer_id = d.id
-> where a.name = '赵华' group by c.course;

9.查出 401 班所有学生的 平均分和总分[分组查询]。

mysql> select c.course,avg(b.achievement),sum(b.achievement)
-> from student as a
-> left join achievement as b
-> on a.id= b.sid
-> left join course as c
-> on b.cid = c.id
-> where a.class=401 group by c.course;

10.查出报读了flask、django课程中年龄在21到23岁之间的所有男生的成绩

mysql> select c.course,avg(b.achievement)
-> from student as a
-> left join achievement as b
-> on a.id = b.sid
-> left join course as c
-> on b.cid = c.id
-> where c.course in ('flask','django') and a.age between 21 and 23 group by c.course;

11.查处总分在200分以上的所有学生的姓名、班级

select a.class,a.name,sum(b.achievement)
from student as a
left join achievement as b
on a.id = b.sid
group by a.id having sum(b.achievement)>200 order by sum(b.achievement) desc ;

ok

MySQL学习-基础练习题的更多相关文章

  1. MySQL学习基础 之 起航篇

    MySQL 学习来自慕课网<与MySQL的零距离接触> MySQL是一个开源的关系型数据库管理系统 MySQL分为社区版和企业版 MySQL登录和退出相关的命令 参数 描述 -D,--da ...

  2. MySQL学习基础

    MySQL是被Sun公司收购了,所以也有热咖啡图标,不过MySQL的作者后来又做了一个MariaDB,小海豚图标,也很好用. MySQL学习: <MySQL网络数据库设计与开发>(电子工业 ...

  3. MySQL学习——基础

    本文是MySQL的基础知识. Linux启动MySQL服务命令 : service mysql start Linux关闭MySQL服务命令 : service mysql stop 登录MySQL命 ...

  4. MySQL学习基础知识1

    什么是数据库? 数据库就是存储数据的仓库. 存储方式: 变量 无法永久存储 文件处理,可以永久存储,弊端:文件只能在自己的计算机读写,无法被分享(局域网除外) 数据库分类: 1.关系型数据库 提供某种 ...

  5. MySQL学习基础知识2

    1.基础语句 查 select(* | 字段名 | 四则运算 | 聚合函数) from 表名称; 加上as取别名 as可省略 如:select name, (math+english)/2 total ...

  6. Mysql学习---基础操作学习2

    基本数据类型 Mysql基本数据类型:二进制,数值[整数,小数].字符串[定长,变长]. 二进制数据.时间和枚举集合 bit[(M)] 二进制位(101001),m表示二进制位的长度(1-64),默认 ...

  7. Mysql学习基础语法

    -- Mysql 数 据 库 语 法 创建数据库 create database 数据库名; 创建表 ) ); 复制表和数据 create table 复制后新的表名 select * from 旧表 ...

  8. mysql学习基础知识3

    1.视图 简化sql语句的编写,限制可以查看的数据 一张虚拟的表,不占任何内存,查视图时都是临时从所查的表中拿数据 特点: 对于视图的增删改查 都会同步到原始表 对原始表的修改,会同步到视图内可查看的 ...

  9. Mysql学习---基础操作学习

    1.1. 基本操作 数据库引擎 Inodb:支持事务[原子性操作,完成一些列操作后才算完成操作,否则rollback] MyISAM: 支持全文索引,强调了快速读取操作,主要用于高负载的select ...

随机推荐

  1. Jam's balance HDU - 5616 (01背包基础题)

    Jim has a balance and N weights. (1≤N≤20) The balance can only tell whether things on different side ...

  2. Eclipse中配置Python插件

    1.点击Window --->  preferences ,左边的标题栏找到Pydev 2. 在Pydev里找到含有Python的选项,点击,在右侧New,弹出框中找到Python的安放目录下的 ...

  3. SQL语句 函数

    6.4 Functions   6.4.1 Numeric abs/mod 绝对值/求模 sqrt/power/exp 求幂 ceil/floor/round 取整 trunc 截取小数点 sin/c ...

  4. ZROI 19.07.31 AB班ACM

    写在前面:非常感谢cjc和djh两位神仙带我,非常感谢他们给了我一次躺赢的机会. 虽然我被硬点成了代码手,但我写的基本每次都有一堆罚时.然而djh爷全部1A,tql. 题目按照一血时间升序,大致符合难 ...

  5. Rsync以守护进程(socket)的方式传输数据

    Rsync以守护进程(socket)的方式传输数据       Rsync服务部署 一.以守护进程(socket)的方式传输数据(重点) 部署环境: 分别用uname命令查看各系统相关信息   1 2 ...

  6. oracle基本语句(第七章、数据库逻辑对象管理)

    索引.实体化视图.簇.散列簇.序列.同义词 1.创建表 CREATE TABLE <表名>(<列名1> <数据类型>,……); CREATE GLOBAL TEMP ...

  7. 【NOIP2016提高A组模拟8.17】(雅礼联考day1)总结

    考的还ok,暴力分很多,但有点意外的错误. 第一题找规律的题目,推了好久.100分 第二题dp,没想到. 第三题树状数组.比赛上打了个分段,准备拿60分,因为时间不够,没有对拍,其中有分段的20分莫名 ...

  8. JPA学习(二、JPA_基本注解)

    框架学习之JPA(二) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...

  9. BZOJ 4488: [Jsoi2015]最大公约数 暴力 + gcd

    Description 给定一个长度为 N 的正整数序列Ai对于其任意一个连续的子序列 {Al,Al+1...Ar},我们定义其权值W(L,R )为其长度与序列中所有元素的最大公约数的乘积,即W(L, ...

  10. 文件操作工具类FileUtils

    package yqw.java.util; import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import ...