数据库学习- 查询数据 (多条件)作业示例【带源码】

简介: MySQL数据库 “查询数据 (多条件)” 习题示例,包含源码,能建立起对于查询数据 (多条件)的基本概念

 目录

1.查询教师表中T2到T9之间工资大于2000并且有岗位津贴的教师所有字段数据

2.查询教师表中教师姓名不以字母“A”开头的教师所有字段数据,用工资排序,去前三条

3.查询教师表中工资等于2000或者岗位津贴大于等于1000的教师所有字段数据

4.查询教师表中教师姓名以字母“d”开头并且含有”a”字母的教师号、教师姓名字段数据

5.查询教师表中教师姓名不以字符“e”开头的并且没有岗位津贴的教师号、教师姓名、工资、岗位津贴字段数据,用工资排序

6.查询课程表中带字母”L”的并且课时数大于等于50的课程名称、课时数字段数据

7.查询课程表中课程号在C5到C7之间或者没有课时数的所有字段数据

8.查询课程表中课时数不等于45并且课程名以“sh”结尾的课程名称、课时数字段数据

9.查询课程表中课程号不在C3、C5、C6中或者课时数等于45的所有字段数据,用课时数排序

10.查询授课表中教室在Y栋2楼的所有课程号、教师号、教室号字段数据, 用周数排序,取前两条

11.查询授课表中序号在2到9之间或者周数为15的序号、教室号、周数字段数据

12.查询授课表中教师号在T2到T9之间并且教室在J栋的教师号、教室号字段数据, 用周数排序

13.查询授课表中周数大于14或者课程号在C3、C5、C6中的所有字段数据

14.查询授课表中周数不为空并且周数大于等于50的课程号、教室号、周数字段数据

15.查询授课表中教室在一楼或者教室在三楼的所有字段数据, 用周数排序


1.查询教师表中T2到T9之间工资大于2000并且有岗位津贴的教师所有字段数据


select * from teacher where no between "T2" and "T9"

   -> and sal>2000 and comm is not null;

image.gif编辑

2.查询教师表中教师姓名不以字母“A”开头的教师所有字段数据,用工资排序,去前三条


select * from teacher where name not like "a%" order by sal limit 3,10;

image.gif编辑


3.查询教师表中工资等于2000或者岗位津贴大于等于1000的教师所有字段数据

select * from teacher where sal=2000 or comm>1000;

image.gif编辑


4.查询教师表中教师姓名以字母“d”开头并且含有”a”字母的教师号、教师姓名字段数据

select * from teacher where name like "d%a%";

image.gif编辑


5.查询教师表中教师姓名不以字符“e”开头的并且没有岗位津贴的教师号、教师姓名、工资、岗位津贴字段数据,用工资排序

select no,name,sal,comm from teacher where name not like "e%"

   -> and comm is null order by sal;

image.gif编辑


6.查询课程表中带字母”L”的并且课时数大于等于50的课程名称、课时数字段数据

select name,class_hours from course where name like "%l%"

   -> and class_hours>=50;

image.gif编辑


7.查询课程表中课程号在C5到C7之间或者没有课时数的所有字段数据

select * from course where no between "C5" and "C7"

   -> or class_hours is null;

image.gif编辑


8.查询课程表中课时数不等于45并且课程名以“sh”结尾的课程名称、课时数字段数据

      select * from course where class_hours !=45

   -> and name like "%sh";

image.gif编辑


9.查询课程表中课程号不在C3、C5、C6中或者课时数等于45的所有字段数据,用课时数排序

select * from course where no not between "C3" and "C5"

   -> or class_hours=45 order by class_hours;

image.gif编辑


10.查询授课表中教室在Y栋2楼的所有课程号、教师号、教室号字段数据, 用周数排序,取前两条

select course_no,teacher_no,class_num from schoolteaching where class_num like "Y2%"

   -> order by week limit 2;

image.gif编辑


11.查询授课表中序号在2到9之间或者周数为15的序号、教室号、周数字段数据

select id,week,class_num from schoolteaching where id between "2" and "9"

   -> or week=15;

image.gif编辑


12.查询授课表中教师号在T2到T9之间并且教室在J栋的教师号、教室号字段数据, 用周数排序

select teacher_no,class_num from schoolteaching where teacher_no between "T2" and "T9"

   -> and class_num like "j%" order by week;

image.gif编辑


13.查询授课表中周数大于14或者课程号在C3、C5、C6中的所有字段数据

select * from schoolteaching where course_no in("C3","C5","C6")

   -> or week>14;

image.gif编辑


14.查询授课表中周数不为空并且周数大于等于50的课程号、教室号、周数字段数据

select course_no,week,class_num from schoolteaching where week is not null

   -> and week>=50;

image.gif编辑


15.查询授课表中教室在一楼或者教室在三楼的所有字段数据, 用周数排序

select * from schoolteaching where class_num like "_1%"

   -> or class_num like "_3%" order by week asc;

image.gif


内容总结


多条件查询首先要看清是“并且”还是“或者”这是第一个基本点,然后就是条件的先后顺序,其实条件的先后没有什么要求,因为“并且”还是“或者”他们的条件之间都是并列关系,而不是包含,所有无论那个条件先后并不会改变他的最终结果。但是,我们一般都习惯先约束题目中先给定的条件,这样可以让自己更有逻辑性,当然,也要结合题目来看,如果你后一个条件更方便,那么就用那个,总之,哪个可以提供效率就用哪个。

相关文章
|
2天前
|
SQL 关系型数据库 MySQL
MySQL数据库的约束+进阶版新增与查询-2
MySQL数据库的约束+进阶版新增与查询
12 1
|
2天前
|
关系型数据库 MySQL 测试技术
MySQL数据库的约束+进阶版新增与查询-1
MySQL数据库的约束+进阶版新增与查询
11 1
|
4天前
|
NoSQL 关系型数据库 数据库
数据库同步 Elasticsearch 后数据不一致,怎么办?
数据库同步 Elasticsearch 后数据不一致,怎么办?
9 0
|
5天前
|
SQL 数据库
SQL数据库基础语法-查询语句
SQL数据库基础语法-查询语句
|
5天前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
10天前
|
SQL 关系型数据库 MySQL
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
|
1天前
|
关系型数据库 MySQL 数据库
docker MySQL删除数据库时的错误(errno: 39)
docker MySQL删除数据库时的错误(errno: 39)
|
1天前
|
关系型数据库 MySQL 数据库连接
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
|
2天前
|
存储 Oracle 关系型数据库
oracle 数据库 迁移 mysql数据库
将 Oracle 数据库迁移到 MySQL 是一项复杂的任务,因为这两种数据库管理系统具有不同的架构、语法和功能。
15 0
|
10天前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)