肖sir__mysql之单表练习题2__(2)

2023-11-29 12:28

本文主要是介绍肖sir__mysql之单表练习题2__(2),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

mysql之单表练习题
一.建表语句
create table grade(class int(4),chinese int(8),english int(4),math int(8),name varchar(20),age int(8),sid int(4)primary key auto_increment) DEFAULT charset=utf8;
insert into grade(class,chinese,english,math,name,age)values(1833,86,90,40,‘张三’,21),(1832,55,86,66,‘李四’,22),(1833,93,57,98,‘赵六’,23),(1832,84,90,88,‘王五’,24),(1833,93,57,22,‘李九’,25),(1832,84,98,77,‘牛七’,26),(1832,56,57,77,‘刘丽’,27),(1833,48,58,88,‘王博’,28),(1832,78,57,88,‘王三’,29),(1833,87,60,65,‘王安’,30),(1832,80,76,88,‘王平’,31),(1833,null,79,88,‘王辉’,32);
select * from grade ;
表结构:
在这里插入图片描述

表:
在这里插入图片描述
二.题目
1、查询1832班的所有信息
条件:
语句: class =1832
方法1:select * from grade where class=1832; #显示所有信息

截图:
在这里插入图片描述
2,查询1833班,语文成绩大于80小于90的所有信息
结果: * ,或chinese,english,math
条件:chinese>80,chinese<90
语句:
select * from grade where class=1833 and chinese<90 and chinese>80;
截图:
在这里插入图片描述
3,查询学生表中5到10行的所有数据
结果: *
条件:limit 4,6
语句:select * from grade limit 4,6;
在这里插入图片描述
4,显示1832班英语成绩为98,数学成绩为77的姓名与学号,
结果: name,sid
条件:class=1832,english=98,math=77
语句:Select name,sid from grade where class=1832 and english=98 and math=77;
截图:
在这里插入图片描述

5,查询出1832班所有信息并且按语文成绩排序(降序)
结果:*
条件:class=1832, order by chinese desc
语句:Select *from grade where class=1832 order by chinese desc;
截图:
在这里插入图片描述

6,查询1833班与1832班,语文成绩与数学成绩都小于80的姓名。
结果:name
条件:class =1833 ,class=1832 hinese<80 and math <80
语句:
方法1:select name from grade where class in (1832,1833) and chinese<80 and math<80;
方法2:select name from grade where (class=1833 and chinese<80 and math<80) or (class=1832 and chinese<80 and math<80);
方法3:select name from grade where ( class=1832 or class=1833) and chinese<80 and math<80;
截图:
在这里插入图片描述

7,查询出没有参加语文考试的学生姓名和班级名称。
结果:name,class
条件:chinese is null
语句:Select name,class from grade where chinese is null;
截图:
在这里插入图片描述

8,求出班上语文成绩不及格的学生姓名
结果:name
条件:chinese <60
语句:Select name from grade where chinese <60 or chinese is null;
截图:
在这里插入图片描述
9,求出每个班的数学平均成绩
结果: avg(math),class
条件:group by class
语句:select class,avg(math) from grade group by class;
截图:
在这里插入图片描述

10、求出每个班级语文成绩总分
结果: sum(chinese),class
条件:group by class
语句:select class,sum(chinese) from grade group by class;
截图:
在这里插入图片描述
11、将语文成绩不及格的学生成绩改为60分
条件:chinses<60 替换 chinses<60
语句:update grade set chinese=60 where chinese<60;

12、三科分数都大于70分的人名和年纪
结果:name,age
条件:chinese>70 and english>70 and math>70;
语句:
在这里插入图片描述

13、求出英语分数高于70且其它任何一科目大于60分的人和班级
结果:name,calss
条件:english>70 and (chinese>60 or math>60)
语句:
select name,class from grade where english>70 and (chinese>60 or math>60);

14、统计每个班的人数
结果:calss,count(name)
条件: group by class ,
语句:
select class,count(*) from grade group by class;
截图:
在这里插入图片描述

15、求每个班数学成绩大于80的人数
结果:class,count()
条件:group by class ,math>80
语句:select class,count(
) from grade where math>80 group by class;
截图:
在这里插入图片描述

16、查询姓名王开头的人的班级姓名年纪
结果:class,name,age
条件:like ‘王%’
语句:select name,age from grade where name like ‘王%’;
截图:
在这里插入图片描述

17、查询三科成绩都及格的班级并显示成绩姓名和年纪
结果: lass,name,age,chinese,english,math
条件: chinese>60 and english>60 and math>60
语句:Select name,age,chinese,english,math from grade where chinese>60 and english>60 and math>60;

截图:
在这里插入图片描述
18、查询1833班语文成绩及格人数并显示及格成绩姓名,年纪和ID号
结果:hinese,name,age,sid
条件:class=1833 and chinese>=60;
语句:select chinese,name,age,sid from grade where class=1833 and chinese>=60;
截图:
在这里插入图片描述

19、查询数学分数为88分的班级分数姓名和年纪
结果:class,chinese,english,math,name,age
条件:class,chinese,english,math,name,age
语句:select class,chinese,english,math,name,age from grade where math=88;
截图:
在这里插入图片描述

20、查询英语成绩和数学成绩都不及格的班级成绩姓名年纪
结果:class,chinese,english,math,name,age
条件:math<60 and english<60;
语句:select class,chinese,english,math,name,age from grade where math<60 and english<60;
截图:
在这里插入图片描述

21、查询语文成绩和英语成绩都低于60分的班级,并显示成绩姓名和ID号
结果:chinese,english,math,name,sid
条件:chinese<60 and english<60;
语句:
select chinese,english,math,name,sid from grade where chinese<60 and english<60;
截图:
在这里插入图片描述

22、统计1833班语文成绩总和
结果: sum(chinese)
条件:class=1833
语句:select sum(chinese) from grade where class=1833;
截图:
在这里插入图片描述

23、统计1833班语文成绩大于所有语文平均成绩的人的姓名,成绩和ID号
结果:name,chinese,english,math,sid
条件:calss=1833 , avg(chinese)
语句:Select class,chinese,english,math,sid from grade where class=1833 and chinese>(select avg(chinese) from grade);
截图:
在这里插入图片描述

24、查询姓名结尾为三的人,并显示班级成绩姓名
结果: class,chinese,english,math,name
条件:‘%三’;
语句:Select class,chinese,english,math,name from grade where name like ‘%三’;
截图:
在这里插入图片描述

25、查询英语成绩分数不为57的班级姓名年纪
结果:class,name,ag
条件: english!=57 或<>57 或 not in (57)
语句:select class,name,age from grade where english!=57;
截图:
在这里插入图片描述
26、给表增加3个字段(数据类型及长度自定义,建议要合理),

语句:alter table grade add (age1 int(20),age2 int(20),age3 int(20));
截图:

这篇关于肖sir__mysql之单表练习题2__(2)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/432823

相关文章

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

MySQL错误代码2058和2059的解决办法

《MySQL错误代码2058和2059的解决办法》:本文主要介绍MySQL错误代码2058和2059的解决办法,2058和2059的错误码核心都是你用的客户端工具和mysql版本的密码插件不匹配,... 目录1. 前置理解2.报错现象3.解决办法(敲重点!!!)1. php前置理解2058和2059的错误

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是

mysql数据库重置表主键id的实现

《mysql数据库重置表主键id的实现》在我们的开发过程中,难免在做测试的时候会生成一些杂乱无章的SQL主键数据,本文主要介绍了mysql数据库重置表主键id的实现,具有一定的参考价值,感兴趣的可以了... 目录关键语法演示案例在我们的开发过程中,难免在做测试的时候会生成一些杂乱无章的SQL主键数据,当我们