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

简介: 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


内容总结


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

相关文章
|
5天前
|
SQL 存储 关系型数据库
数据储存数据库管理系统(DBMS)
【10月更文挑战第11天】
14 3
|
11天前
|
SQL Java 数据库连接
如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
【10月更文挑战第6天】在代码与逻辑交织的世界中,我从一名数据库新手出发,通过不断探索与实践,最终成为熟练掌握JDBC的开发者。这段旅程充满挑战与惊喜,从建立数据库连接到执行SQL语句,再到理解事务管理和批处理等高级功能,每一步都让我对JDBC有了更深的认识。示例代码展示了如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
47 5
|
11天前
|
SQL 存储 关系型数据库
添加数据到数据库的SQL语句详解与实践技巧
在数据库管理中,添加数据是一个基本操作,它涉及到向表中插入新的记录
|
10天前
|
SQL 存储 关系型数据库
用SQL语句创建数据库:基础指南与操作示例4p7.0535yinshua.com
一、引言在当今数字化时代,数据库已成为各类应用的核心组成部分,用于存储、管理和检索大量数据。结构化查询语言(SQL)作为一种用于管理关系数据库系统的标准编程语言,广泛应用于数据库的创建、查询、更新和管理。本文将详细介绍如何使用SQL语句创建数据库,涵盖基本概念、操作步骤及常见示例,帮助读者快速掌握相
|
10天前
|
SQL Go 数据库
【速存】深入理解Django ORM:编写高效的数据库查询
【速存】深入理解Django ORM:编写高效的数据库查询
29 0
|
13天前
|
存储 SQL 数据库
深入理解数据库索引:提升查询性能的关键
数据库索引是优化查询性能的重要工具。本文将带你深入探索索引的内部结构和工作原理,揭示如何通过合理使用索引来加速数据库查询,同时避免常见的索引陷阱。
|
9天前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
43 6
|
7天前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
39 3
Mysql(4)—数据库索引
|
9天前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
27 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
14天前
|
缓存 算法 关系型数据库
Mysql(3)—数据库相关概念及工作原理
数据库是一个以某种有组织的方式存储的数据集合。它通常包括一个或多个不同的主题领域或用途的数据表。
38 5
Mysql(3)—数据库相关概念及工作原理