Mysql配套测试之查询篇

🏝️专栏:Mysql_猫咪-9527的博客-CSDN博客

🌅主页:猫咪-9527-CSDN博客

"欲穷千里目,更上一层楼。会当凌绝顶,一览众山小。"

目录

条件查询简单测试:

1.查询英语成绩不及格的同学(<60)

2.语文成绩在[80,90]分的同学

3.数学成绩是58或者59或者98或者99的同学及数学成绩

4.孙某同学

5.姓孙的同学

6.语文成绩好于英语成绩的同学

7.总分在两百分一下的同学

8.语文成绩大于80且不姓孙的同学

[9.孙某同学,否者要求总成绩>200并且 语文成绩<数学成绩并且英语成绩>80](#9.孙某同学,否者要求总成绩>200并且 语文成绩<数学成绩并且英语成绩>80)

10.null查询(测试表里面并没有null数据想测试,记得插入)

排序查询简单测试:

11.查询所有同学及成绩并按数学升序排序

12.查询同学各门成绩,依次按数学降序,英语升序,语文升序来显示

13.查询同学各门成绩,并按总分排序

14.查询姓孙或者姓曹的同学的数学成绩,并按数学成绩降序排列


测试准备:

(1)创建一个测试数据库

复制代码
create databate text_3_22;

(2)进入数据库

复制代码
use text_3_22;

(3)创建表并插入数据(我已经为你们准备好了,记得插入后再进行测试)

复制代码
-- 创建表结构
create table exam_result (
  id int unsigned primary key auto_increment,
  name varchar(20) not null comment '同学姓名',
  chinese float default 0.0 comment '语文成绩',
  math float default 0.0 comment '数学成绩',
  english float default 0.0 comment '英语成绩'
);

-- 插入测试数据
insert into exam_result (name, chinese, math, english) values
('唐三藏', 67, 98, 56),
('孙悟空', 87, 78, 77),
('猪悟能', 88, 98, 90),
('曹孟德', 82, 84, 67),
('刘玄德', 55, 85, 45),
('孙权', 70, 73, 78),
('宋公明', 75, 65, 30);

(4)记得检验自己插入的数据是否正确

复制代码
select *from exam_result;
条件查询简单测试:
1.查询英语成绩不及格的同学(<60)
复制代码
select name 姓名 ,english 英语 from exam_result where english<60;
2.语文成绩在[80,90]分的同学

方案一:

复制代码
select name 姓名, chinese 语文 from exam_result where chinese>=80 AND chinese<=90;

方案二:

复制代码
select name 姓名, chinese 语文 from exam_result where chinese between 80 and 90;
3.数学成绩是58或者59或者98或者99的同学及数学成绩

方案一:

复制代码
select name 名字,math 数学 from exam_result where math =99 or math =98
or math =59 or math =58;

方案二:

复制代码
select name 姓名, math 数学 from exam_result where math in (98,99,59,58);
4.孙某同学
复制代码
select name 姓名 from exam_result where name like '孙_';
5.姓孙的同学
复制代码
select name 姓名 from exam_result where name like '孙%';
6.语文成绩好于英语成绩的同学
复制代码
select name 姓名,chinese 语文 ,english 英语 from exam_result 
where chinese > english;
7.总分在两百分一下的同学
复制代码
select name,math,english,chinese from exam_result
where math+english+chinese<200;
8.语文成绩大于80且不姓孙的同学
复制代码
select name 姓名 ,chinese 语文 from exam_result 
where chinese>80 and name not like '孙%';
9.孙某同学,否者要求总成绩>200并且 语文成绩<数学成绩并且英语成绩>80
复制代码
select name 姓名,chinese 语文,math 数学,english 英语
from exam_result where name like '孙%' or
( chinese+math+english>200 and chinese<math and english>80);
10.null查询(测试表里面并没有null数据想测试,记得插入)
复制代码
select name,math from exam_result where math<=>null;
排序查询简单测试:
11.查询所有同学及成绩并按数学升序排序
复制代码
select name ,chinese,english,math from exam_result order by math asc;
12.查询同学各门成绩,依次按数学降序,英语升序,语文升序来显示
复制代码
select name,chinese,english,math from exam_result
order by math desc,chinese asc,english asc;
13.查询同学各门成绩,并按总分排序
复制代码
select name ,math +english+chinese total from exam_result 
order by total desc;
14.查询姓孙或者姓曹的同学的数学成绩,并按数学成绩降序排列
复制代码
select name ,math from exam_result
where name like'孙%' or name like '曹%' order by math desc;
15.去重查询练习
复制代码
create table distinct_text(name varchar);
----创建去重测试表结构

insert distinct_text ('a'), ('a'), ('a'), ('a'),('b'),('b'),('b'),('b');

select distinct *from distinct_text;

今天,你学习了吗?

看到这里不容易,点个关注不迷路 !

大家可以在评论区分享一下测试的怎么样!

祝大家学习快乐!每一天。

相关推荐
Nyarlathotep01132 小时前
SQL的事务控制
sql·mysql
进击的丸子3 小时前
虹软人脸服务器版SDK(Linux/ARM Pro)多线程调用及性能优化
linux·数据库·后端
NineData19 小时前
NineData智能数据管理平台新功能发布|2026年1-2月
数据库·sql·数据分析
IvorySQL20 小时前
双星闪耀温哥华:IvorySQL 社区两项议题入选 PGConf.dev 2026
数据库·postgresql·开源
ma_king1 天前
入门 java 和 数据库
java·数据库·后端
jiayou641 天前
KingbaseES 实战:审计追踪配置与运维实践
数据库
NineData2 天前
NineData 迁移评估功能正式上线
数据库·dba
NineData2 天前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
阿里云大数据AI技术2 天前
用 SQL 调大模型?Hologres + 百炼,让数据开发直接“对话”AI
sql·llm
赵渝强老师2 天前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql