数据库查询操作详解

合集下载

MySQL中的单表查询与多表查询

MySQL中的单表查询与多表查询

MySQL中的单表查询与多表查询MySQL是一种关系型数据库管理系统,被广泛应用于大量的网站和应用程序中。

在数据库中,查询是最常用的操作之一。

在MySQL中,查询可以分为单表查询和多表查询两种类型。

本文将介绍MySQL中的单表查询和多表查询的概念、用法和注意事项。

一、单表查询单表查询是指从数据库中的单个表中检索数据的操作。

在单表查询中,我们可以使用SELECT语句来指定要检索的列以及满足特定条件的数据行。

以下是常见的单表查询用法:1. 检索所有列要检索表中的所有列,可以使用以下语法:SELECT * FROM 表名;2. 检索指定列如果只需要检索表中的部分列,可以使用以下语法:SELECT 列名1, 列名2, ... FROM 表名;3. 检索满足条件的数据行在单表查询中,我们可以使用WHERE子句来指定特定的条件,以检索满足条件的数据行。

以下是一个示例:SELECT * FROM 表名 WHERE 条件;4. 检索排序后的数据要按照特定的列对数据进行排序,可以使用ORDER BY子句。

以下是一个示例:SELECT * FROM 表名 ORDER BY 列名 ASC|DESC;5. 检索唯一的数据行如果要检索去重后的数据行,可以使用DISTINCT关键字。

以下是一个示例:SELECT DISTINCT 列名 FROM 表名;二、多表查询多表查询是指从多个表中检索数据并将它们组合在一起的操作。

在多表查询中,我们使用JOIN语句将两个或多个表关联起来。

以下是几种常见的多表查询用法:1. 内连接内连接是最常见的连接类型,它返回两个表中满足连接条件的数据行。

可以使用以下语法进行内连接:SELECT 列名 FROM 表名1 INNER JOIN 表名2 ON 表名1.列名 = 表名2.列名;2. 左连接左连接返回左表中所有的数据行,以及满足连接条件的右表的数据行。

如果右表中没有与左表匹配的数据行,则返回NULL。

最全MySQL数据库表的查询操作

最全MySQL数据库表的查询操作

最全MySQL数据库表的查询操作 序⾔ 1、 2、 本节⽐较重要,对数据表数据进⾏查询操作,其中可能⼤家不熟悉的就对于INNER JOIN(内连接)、LEFT JOIN(左连接)、RIGHT JOIN(右连接)等⼀些复杂查询。

通过本节的学习,可以让你知道这些基本的复杂查询是怎么实现的,但是建议还是需要多动⼿去敲,虽然理解了什么是内连接等,但是从理解到学会,是完全不⼀样的感觉。

--WZY⼀、单表查询 1.1、查询所有字段 1.2、查询指定字段 1.3、查询指定记录 1.4、带IN关键字的查询 1.5、带BETWEEN AND 的范围查询 1.6、带LIKE的字符匹配查询 1.7、查询空值 1.8、带AND的多条件查询 1.9、带OR的多条件查询 1.10、关键字DISTINCT(查询结果不重复) 1.11、对查询结果排序 1.12、分组查询(GROUP BY) 1.13、使⽤LIMIT限制查询结果的数量 集合函数查询 1.14、COUNT()函数 1.15、SUM()函数 1.16、AVG()函数 1.17、MAX()函数 1.18、MIN()函数 ⼆、多表查询 ⼩知识 为表取别名 为字段取别名 基于两张表  2.1、普通双表连接查询 2.2、内连接查询 2.3、外连接查询 2.3.1、左外连接查询 2.3.2、右外连接查询 2.4、复合条件连接查询 ⼦查询 2.5、带ANY、SOME关键字的⼦查询 2.6、带ALL关键字的⼦查询 2.7、带EXISTS关键字的⼦查询 2.8、带IN关键字的⼦查询 2.9、带⽐较运算符的⼦查询 合并结果查询 2.10、UNION[ALL]的使⽤三、使⽤正则表达式查询 3.1、查询以特定字符或字符串开头的记录 3.2、查询以特定字符或字符串结尾的记录 3.3、⽤符号"."来替代字符串中的任意⼀个字符 3.4、使⽤"*"和"+"来匹配多个字符 3.5、匹配指定字符串 3.6、匹配指定字符中的任意⼀个 3.7、匹配指定字符以外的字符 3.8、使⽤{n,}或者{n,m}来指定字符串连续出现的次数四、综合案例练习数据表查询操作 4.1、搭建环境 省略 4.2、查询操作 省略 4.3、在已经创建好的employee表中进⾏如下操作 4.3.1、计算所有⼥员⼯(F)的年龄 4.3.2、使⽤LIMIT查询从第3条记录开始到第六条记录 4.3.3、查询销售⼈员(SALSEMAN)的最低⼯资 4.3.4、查询名字以字母N或者S结尾的记录 4.3.5、查询在BeiJing⼯作的员⼯的姓名和职务 4.3.6、使⽤左连接⽅式查询employee和dept表 4.3.7、查询所有2001~2005年⼊职的员⼯的信息,查询部门编号为20和30的员⼯信息并使⽤UNION合并两个查询结果 4.3.8、使⽤LIKE查询员⼯姓名中包含字母a的记录 4.3.9、使⽤REGEXP查询员⼯姓名中包含T、C或者M 3个字母中任意1个的记录 想直接做题的,跳过讲解,直接到练习区。

数据库中的数据查询

数据库中的数据查询

数据库中的数据查询数据库是指按照一定的数据模型建立起来的数据集合,它是数据管理技术的核心。

在一些大型的企业应用程序中,数据查询是非常重要的。

数据查询指的是根据一定的条件,从数据库中检索出所需要的数据。

在进行数据查询的过程中,我们可以通过一个查询语句来实现。

SQL语句在进行数据库的数据查询时,最常用的是SQL语句。

SQL(SQL Structured Query Language)语言是一种标准化的关系型数据库操作语言,它允许我们对数据库进行访问和操作。

SQL语句包含了非常多常用的命令,如SELECT、UPDATE、DELETE 和INSERT等,这些命令允许我们对数据进行增删改查的操作。

SELECT语句SELECT语句是SQL中最常用的查询语句,用于从数据库中查询出所需要的数据。

SELECT语句的基本格式如下:SELECT 列名 FROM 表名 WHERE 条件;```其中,列名是需要查询出来的列名称,可以是多个列,用逗号分隔开。

表名是需要查询的表名称,如果需要查询多个表,可以使用JOIN语句连接多个表。

WHERE是查询的条件,可以使用多个WHERE连接多个条件,可以使用AND或者OR链接多个条件。

SELECT语句可以非常灵活地查询出我们需要的数据,我们可以根据需求来设置查询条件,以此获得所需要的数据。

ORDER BY语句ORDER BY语句用于对查询结果进行排序。

使用ORDER BY语句,我们可以按照多个列进行排序,如:```SELECT 列名 FROM 表名 ORDER BY 列1 ASC, 列2 DESC;其中,ASC表示升序排列,DESC表示降序排列,我们可以根据需求来设置排序的方式。

GROUP BY语句GROUP BY语句用于对查询结果进行分组。

使用GROUP BY语句,我们可以根据某个列进行分组,并统计每个分组中的记录数量。

如:```SELECT 列1, COUNT(*) FROM 表名 GROUP BY 列1;```这条语句将根据列1进行分组,并统计每个分组中的记录数量。

数据库的查询操作之基础查询

数据库的查询操作之基础查询

1.语法select字段列表from表名列表where条件列表group by分组字段having分组之后的条件order by排序limit分页限定2.基础查询1.多个字段的查询select 字段名1,字段名2...from 表名; 注意,查询所有字段:select * from 表名;2.去除重复distinct(只有两个结果集的字段完全一样)ifnull(表达式1,表达式2);null参与的运算,计算结果都为null表达式1:哪个字段需要判断是否为null表达式2:如果该字段为null后的替换值。

3.计算列一般使用四则运算来计算一些列的值。

(一般只会进行数值型的计算)4.起别名as:as也可以省略。

数据表:查询姓名和年龄:select name,age from student1;查询地址:select address from student1;去除重复查询结果:select distinct address from student1; 谁来自某个地方:select name,address from student1;计算math和English分数之和:select name,math,English,math + English from student1;如果有null参与的运算,计算结果都为null:select name,math,English,math +ifnull(English,0) from student1;起别名:select name,math,English,math +ifnull(English,0)as 总分 from student1;可以把as去掉:select name 姓名,math 数学,English 英语,math+English 总分 from student1;。

mysql查询数据相关操作PPT课件

mysql查询数据相关操作PPT课件
IS [ NOT ] NULL 其中,“NOT”是可选参数,加上NOT表示字段不是空 值时满足条件。
IS NULL是一个整体,不能将IS换成”=”.
5.2.8 带AND的多条件查询
AND关键字可以用来联合多个条件进行查询。使用 AND关键字时,只有同时满足所有查询条件的记录会被查询 出来。如果不满足这些查询条件的其中一个,这样的记录将 被排除掉。AND关键字的语法规则如下:
5.2.4 带IN关键字的查询
IN关键字可以判断某个字段的值是否在指定的集合中 。如果字段的值在集合中,则满足查询条件,该纪录将被查 询出来。如果不在集合中,则不满足查询条件。其语法规则 如下:
[ NOT ] IN ( 元素1, 元素2, …, 元素n )
5.2.5 带BETWEEN AND的范围查询
5.2.3 查询指定记录
SELECT语句中可以设置查询条件。用户可以根据自己 的需要来设置查询条件,按条件进行查询。查询的结果必须 满足查询条件。
例如,用户需要查找d_id为501的记录,那么可以设置 “d_id=501”为查询条件件。WHERE子句可以用来指定查询 条件。其语法规则如下:
MySQL中,SELECT的基本语法形式如下: SELECT 属性列表 FROM 表名和视图列表 [ WHERE 条件表达式1 ] [ GROUP BY 属性名1 [ HAVING 条件表达式2 ] ] [ ORDER BY 属性名2 [ ASC | DESC ] ]
5.2 单表查询
单表查询是指从一张表中查询所需要的数据。查询数据 时,可以从一张表中查询数据,也可以从多张表中同时查询 数据。两者的查询方式上有一定的区别。因为单表查询只在 一张表上进行操作,所以查询比较简单。本小节将讲解在单 表上查询所有的字段、查询指定的字段、查询指定的行、多 条件查询、查询结果不重复、给查询结果排序、分组查询和 用LIMIT限制查询结果的数量等内容。

数据查询命令总结

数据查询命令总结

数据查询命令总结1.简介数据查询是在数据库中检索和获取特定数据的过程。

数据库查询语言(SQL)是一种通用的语言,用于与关系数据库进行交互。

有多种查询命令可用于执行不同的数据查询任务。

本文将总结常用的数据查询命令及其用法。

2.SELECT命令SELECT命令是最常用的数据查询命令,用于从数据库表中检索数据。

2.1 SELECT基本语法SELECT列名FROM表名;2.2 查询所有列如果想查询表中的所有列,可以使用 * 代替列名。

SELECT*FROM表名;2.3 查询特定列如果只需要查询表中的特定列,可以在SELECT语句中指定所需的列名。

SELECT列名1, 列名2, ...FROM表名;2.4 查询结果去重如果查询结果中包含重复的行,可以使用DISTINCT关键字将其去重。

SELECT DISTINCT列名FROM表名;2.5 查询结果排序使用ORDER BY子句可以按照指定的列对查询结果进行排序,默认按升序排序。

SELECT列名FROM表名ORDER BY列名ASC;也可以通过在列名后面跟着关键字DESC来进行降序排序。

SELECT列名FROM表名ORDER BY列名DESC;2.6 条件查询通过使用WHERE子句,可以根据指定的条件来过滤查询结果。

SELECT列名FROM表名WHERE条件;条件可以使用比较操作符(如=、<、>)和逻辑操作符(如AND、OR)进行组合。

2.7 范围查询有时候需要查询某个范围内的数据,可以使用BETWEEN关键字。

SELECT列名FROM表名WHERE列名BETWEEN值1 AND值2;2.8 列计算可以在SELECT语句中使用表达式进行列计算,例如计算两列的和或差。

SELECT列名1 +列名2 AS新列名FROM表名;3.INSERT命令INSERT命令用于向数据库表中插入新的行。

3.1 INSERT基本语法INSERT INTO表名 (列1, 列2, ...)VALUES (值1, 值2, ...);3.2 插入多个行可以一次性插入多个行,每个行的值用逗号隔开。

数据库查询的说明书

数据库查询的说明书

数据库查询的说明书一、简介数据库查询是指通过特定的查询语句,在数据库中寻找符合特定条件的数据,并将其返回给用户。

数据库查询的作用非常重要,它能够实现对大量数据的筛选、排序、分组等操作,为用户提供准确、高效的数据结果。

本说明书将详细介绍数据库查询的基本概念、语法结构以及常用的查询操作。

二、基本概念1. 数据库:数据库是指存储大量有组织的数据的集合。

一般由表、字段、数据等组成,具有结构化的特点。

2. 查询语句:查询语句是用于从数据库中获取数据的命令。

它由关键字、函数、操作符等组成,能够实现对数据的检索、过滤和排序等操作。

3. 条件:条件是指对查询结果进行筛选的限制规则。

常用的条件包括等于、不等于、大于、小于等。

三、查询语句的语法结构数据库查询语句通常包括 SELECT、FROM、WHERE、GROUP BY、HAVING 和 ORDER BY 等关键字,用于指定查询的目标表、查询条件以及排序规则等。

1. SELECT:SELECT 关键字用于指定要查询的字段。

可以使用 *表示查询所有字段,也可以具体指定某些字段。

2. FROM:FROM 关键字用于指定查询的目标表。

用户可以在FROM 子句中指定一个或多个表,以实现数据的联合查询。

3. WHERE:WHERE 关键字用于指定查询的筛选条件。

用户可以使用各种操作符和函数来设定条件,实现对数据的过滤。

4. GROUP BY:GROUP BY 关键字用于指定分组字段。

通过分组,可以对数据进行统计和分类。

5. HAVING:HAVING 关键字用于指定对分组结果进行筛选的条件。

它通常和 GROUP BY 关键字一起使用。

6. ORDER BY:ORDER BY 关键字用于指定查询结果的排序规则。

可以指定一个或多个字段,并指定升序或降序。

四、常用的查询操作1. 简单查询:通过 SELECT 关键字指定要查询的字段和 FROM 关键字指定查询的目标表,可以进行简单的数据检索操作。

数据库多表查询的几种方法

数据库多表查询的几种方法

数据库多表查询的几种方法一个完整而高效的数据库系统必然包含多个表格,并且常常需要进行多表查询以得出完整的数据。

这里将会介绍如下几种多表查询的方法:一、嵌套查询嵌套查询是一种常用的多表查询方法,它将一次查询分成两次或多次,先查出符合某一条件的数据,再将这批数据作为新查询的条件之一。

这种方法可以应对较为复杂的查询需求,但也会造成较大的查询开销。

一般情况下,这种方法在数据量较少、需要进行复杂关联查询的时候使用。

二、联合查询联合查询是一种比较简便的多表查询方法,它可以将多个表格中的数据连接到一起查询。

在进行联合查询时,必须让每个表格的列数、列名以及列类型相同,以便于查询和展示。

三、内部连接查询内部连接查询是一种将两个或多个表格中的数据连接起来的方法。

它会将具有相同值的行合并成一个结果集,但是需要注意的是,不同的内部连接类型也会产生不同的查询结果。

常用的内部连接类型有:等值连接、非等值连接、自连接、自然连接等。

对于内部连接查询,需要注意数据表的主键和外键的对应关系,以便得到准确的查询结果。

四、外部连接查询外部连接查询是一种将两个或多个表格中的数据连接起来的方法。

外部连接查询包含左连接、右连接等不同查询类型。

这种方法是为了查询一些在另一个表中可能没有对应数据的表格数据。

在使用外部连接查询的时候,需要注意数据表的关联关系和数据源的正确性。

五、交叉连接查询交叉连接查询也叫笛卡尔积连接。

它以一张空表格为基础,将多个表格的数据组合起来,得到所有可能的数据组合。

这种查询方法会得到大量的结果,但是很少使用,因为其过于庞大的结果集很难使用。

在使用交叉连接查询时,需要注意数据表的列数和行数,以避免产生数据爆炸的情况。

以上就是多表查询的几种方法,不同的查询方法适用于不同的查询场景,在具体需求中需要选择合适的方法进行查询,以获得最佳的查询结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(1)查询语句格式Select [all|distinct] <目标列表达式> [,<目标列表达式>]……From <表名或视图> [,<表名或视图>]……[where <条件表达式>][group by <列名1> [having <条件表达式>]][order by <列名2> [asc|desc]] ;注:[all|distinct]中all为缺省值,取消结果中的重复列则用distinct;[asc|desc]中asc为缺省值,表示按照升序排列。

对于空值,若按照升序排,则含空值的元组显示在最后面;若按降序排,则空值的元组最先显示。

(2)查询指定列a)查询部门表dept中所有部门的详细信息,并且列名用汉字表示。

select DNO,DNAME,ADDRfrom dept;b)查询部门表dept中人力资源部的部门编号。

select DNOfrom deptwhere DNAME='人力资源部';<目标列表达式>中各个列的先后顺序可以与表中的顺序不一致.(3)查询全部列查询全体学生的详细记录Select *From Student ;(4)将查询结果的列名用别名显示查询部门表dept中所有部门的详细信息,并且列名用汉字表示。

select DNO部门编号,DNAME部门名称,ADDR部门地址from dept;(5)在查询的结果中插入新的一列用来显示指定的内容Select Sname NAME ,’Year of Birth:’BIRTH ,Sbirth BIRTHDAY ,Sdept DEPARTMENTFrom Stuent ;则显示的结果中,每个元组的第二列均为”Year of Birth:”,此列在原数据库中是不存在的.(6)查询经过计算的值Select 子句的<目标列表达式> 不仅可以是表中的属性列,也可以是表达式。

例:查询全体学生的姓名及其出生年月Select Sname ,2004 – Sage /*当时年份减去年龄为出生年月From Stufent ;(7)设置查询显示的字母全为大写(或小写)Select Sname ,’Year of Birth:’,2004 – Sage ,LOWER(Sdept)From Student ;此时Sdept显示的结果全为小写Select Sname ,’Year of Birth:’,2004 – Sage ,UPPER(Sdept)From Student ;注:要设置查询表中的属性列名的大小写可以用LOWER,UPPER。

(8)消除取值重复的行a)查询雇员表empl中出现的所有部门编号,要求无重复。

select distinct DNOfrom EMPL;b)查询项目表proj中所有项目名称。

select PNAMEfrom PROJ等价于select all PNAMEfrom PROJ(9)查询满足条件的元组常用的查询条件注:Between后是范围的下限,and后是范围的上限.查询结果中包含上下限的结果.a)查询成绩不及格的学生的学号Select distinct SnoFrom SCWhere Grade < 60 ;b)查询年龄在20到30(包含20及30)之间的学生的姓名、系别和年龄Select Sname ,Sdept ,SageFrom StudentWhere Sage between 20 and 30 ;c)查询计算科学系(CS) ,数学系(MA) ,信息系(IS)学生的姓名和性别Select Sname ,SsexFrom StudentWhere Sdept in (‘CS’ ,’MA’ ,’IS’) ;(10)含通配符”%”的查询%(百分号):代表任意长度(长度可以为0)的字符串,例如a%b代表以a开头且以b结尾的任意长度的字符串,acb ,afdsagasdsab ,ab都满足。

例:查询雇员表empl中姓名以“伟“字结尾的员工信息。

select*from EMPLwhere ENAME like'%伟';(11)含通配符”_”的查询_(下划线):代表任意单个字符,例a_b代表以a开头且以b结尾的长度为3的字符串。

例:查询姓“欧阳”且全名3个汉字的学生的姓名Select SnameFrom StudentWhere Sname like ‘欧阳__’;注:一个汉字占两个字符的位置(12)字符串本身含通配符的查询使用使用escape ‘<换码字符>’。

查询以”DB_”开头,且倒数第三个字符为i的课程的详细情况。

Select *From StudentWhere Cname like ‘DB\_%i__’ escape ‘\’;注:escape ‘\’表示”\”为换码字符,则第一个”_”是普通的字符,后两个”_”表示通配符。

(13)涉及空值的查询例:查询所有有成绩的学生的学号Select SnoFrom SCWhere Grade IS NULL ;注:此处“IS”不能用”=”替代(14)带排序的查询查询工作表job中的工作信息,结果按工作天数升序排列。

select*from JOBorder by DAYS asc;等价于select*from JOBorder by DAYS asc;查询雇员表empl中所有员工的详细信息,结果按员工姓名降序排列。

select*from EMPLorder by ENAME desc;(15)含聚集函数的查询聚集函数主要有:Count ([distinct|all] *) //统计元组个数Count ([distinct|all] <列名>) //统计一列中值的个数Sum ([distinct|all] <列名>) //计算一列值的总和(此列必须是数值型)Avg ([distinct|all] <列名>) //计算一列值的平均值(此列必须是数值型)Max ([distinct|all] <列名>) //求一列值中的最大值Min ([distinct|all] <列名>) //求一列值中的最小值注:[distinct|all]缺省时为all.在聚集函数遇到空值时,除count(*)外,都跳过空值而只处理非空值.例:查询1号课程的学生的最高分数Select max(Grade)From SCWhere Cno = ‘1’;(16)到GROUP BY子句的查询a)求各个课程号及相应的选课人数select Cno ,count(Sno)from SCgroup by Cno ;b)查询选修了3们以以上的课程的学生的学号select Snofrom SCcroup by Snohaving count(*) > 3 ;注:where子句与having子句短语的区别在于作用对象不同。

Where子句作用于基本表或视图,从中选择满足条件的元组;having子句作用与组,从中选择满足条件的组。

若一个查询同时设计两个以上的表,则称之为连接查询。

(1)等值与非等值连接查询格式如下:[<表名1>.]<列名1> <比较运算符> [<表名2>.] <列名2>其中主要的比较运算符有:= ,> ,<,>= ,<= ,!=(或<>) 等.此外连接谓词还可以有如下的形式:[<表名1>.] <列名1> between [<表名2>.] <列名2> and [<表名2>.] <列名2>当连接运算符为=时,称为等值连接,否则称为非等值连接。

注:当属性列在查询的所有表中是唯一的时候则可以去掉前面的表名,否则必须加上表名。

例:查询每个学生及其选修课程的情况.Select Student.* ,SC.*From Student ,SCWhere Student.Sno = SC.Sno ;(2)自身连接例:查询每一门课程的间接先修课(即先修课的先修课)分析:此时为Course表的自身连接,故要为Course表去两个别名,一个是first,一个是second。

Select o ,oFrom Course first ,Course secondWhere first.Cpno = o ;(3)外连接在上例中,没有显示200215123和200215125两个学生的信息,原因在于他们没有选课。

有时想以Student表为主体列出每个学生的基本情况及其选课情况,则需要使用外连接。

用外连接做上面的例题:Select Student.Sno ,Sname ,Ssex ,Sage ,Sdept ,Cno ,CgradeFrom Student LEFT JOIN SC ON (Student.Sno = Sc.Sno) ;/*也可以用USING来去掉上面结果中的重复值:From Student LEFT JOIN SC USING(Sno) ; */注:做链接列出左边关系(如本例)中的所有元组,右外连接列出右边关系中的所有元组。

(4)复合条件连接在上面的例子中,where子句中只有一个条件,即连接谓词。

Where也可以有多个连接条件,称为符合条件连接。

例:查询选修2号课程且成绩在90分以上的所有学生Select Student.Sno ,SnameFrom Student ,SCWhere Student.Sno = SC.Sno AND /*连接谓词*/o = ‘2’AND SC.Grade > 90 ; /*其它限制条件*/例:查询每个学生的学号、姓名、选修课程名及成绩Select Student.Sno ,Sname ,Cname ,GradeFrom Student ,SC ,CourseWhere Student.Sno = SC.Sno and o = o ;集合查询操作主要包括并操作UNION、交操作INTERSECT和差操作EXCEPT。

注:多个集合操作的个查询结果的列数必须相同,对应项的数据类型也必须相同。

(1)并操作UNION使用UNION将多个查询结果并起来时,系统会自动的去掉重复元组;如果要保留重复元组,则可以使用UNION ALL操作符。

例:查询计算机科学系的学生及年龄不大于19岁的学生.Select *From StudentWhere Sdept = ‘CS’UnionSelect *From StudentWhere Sage <= 19 ;例:查询选修了1号课程或者2号课程的学生Select SnoFrom SCWhere Cno = ‘1’UnionSelect SnoFrom SCWhere Cno = ‘2’ ;(2)交操作(INTERSECT)例:查询计算机科学系的学生与年龄不大于19岁的学生的交集Select *From StudentWhere Sdept = ‘CS’IntersectSelect *From StudentWhere Sage <= 19 ;等价于Select *From StudentWhere Sdept = ‘CS’and Sage <= 19 ;(3)差操作(EXCEPT)例:查询计算机科学系的学生与年龄不大于19岁的学生的差集Select *From StudentWhere Sdept = ‘CS’ExceptSelect *From StudentWhere Sage <= 19 ;一个select-from-where语句称为一个查询块。

相关文档
最新文档