DB第3章1关系数据库标准语言
- 格式:ppt
- 大小:532.52 KB
- 文档页数:38
课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材41页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。
数据:描述事物的符号记录称为数据。
数据的种类有文字、图形、图象、声音、正文等等。
数据与其语义是不可分的。
数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库系统:数据库系统(DBS)是指在计算机系统中引入数据库后的系统构成。
数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统:数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件。
用于科学地组织和存储数据、高效地获取和维护数据。
DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
2.使用数据库系统有什么好处?使用数据库系统的好处是由数据库管理系统的特点或优点决定的。
使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。
为什么有这些好处,可以结合第 5题来回答。
使用数据库系统可以大大提高应用开发的效率。
因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS来完成。
此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。
数据逻辑结构的改变是DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。
从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。
使用数据库系统可以减轻数据库系统管理人员维护系统的负担。
因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。
第一章:绪论数据库(DB):长期存储在计算机内、有组织、可共享的大量数据的集合。
数据库中的数据按照一定的数据模型组织、描述和存储,具有娇小的冗余度、交稿的数据独立性和易扩展性,并可为各种用户共享。
数据库管理系统(DBMS):位于用户和操作系统间的数据管理系统的一层数据管理软件。
用途:科学地组织和存储数据,高效地获取和维护数据。
包括数据定义功能,数据组织、存储和管理,数据操纵功能,数据库的事物管理和运行管理,数据库的建立和维护功能,其他功能。
数据库系统(DBS):在计算机系统中引入数据库后的系统,一般由数据库。
数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
目的:存储信息并支持用户检索和更新所需的信息。
数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据由DBMS统一管理和控制。
概念模型实体,客观存在并可相互区别的事物称为实体。
属性,实体所具有的某一特性称为属性。
码,唯一标识实体的属性集称为码。
域,是一组具有相同数据类型的值的集合。
实体型,具有相同属性的实体必然具有的共同的特征和性质。
实体集,同一类型实体的集合称为实体集。
联系两个实体型之间的联系一对一联系;一对多联系;多对多联系关系模型关系,元组,属性,码,域,分量,关系模型关系数据模型的操纵与完整性约束关系数据模型的操作主要包括查询,插入,删除和更新数据。
这些操作必须满足关系完整性约束条件。
关系的完整性约束条件包括三大类:实体完整性,参照完整性和用户定义的完整性。
数据库系统三级模式结构外模式,模式,内模式模式:(逻辑模式)数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
一个数据库只有一个模式。
模式的地位:是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关。
模式定义的内容:数据的逻辑结构(数据项的名字、类型、取值范围等),数据之间的联系,数据有关的安全性、完整性要求外模式:(子模式/用户模式)数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据库和逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的系统的逻辑表示。
数据库基础与应用1.数据(DB):数据实际上是描述事物的符号纪录。
2.数据库: 数据库实际上是长期存储在计算机内的有组织的、可共享的数据集合。
3.从文件系统的视角上看去,文件是无结构的,文件只是一个字节流,因此,我们经常把文件叫做流式文件,实际上文件的数据是有结构的,数据的结构需要程序员通过编写程序来建立和维护。
4.数据库应用可以分为两大类:联机事务处理(OLTP),联机分析处理(OLAP).联机事务处理解决了组织结构业务自动化问题,而联机分析处理帮助管理层更好的分析组织结构的运站情况。
5. 数据库管理系统(DBMS):数据库管理系统是一类重要的软件,由一组程序组成。
其主要功能是完成对数据库的定义、数据操作。
提供给用户一个简明的接口,实现事务处理等。
6.数据库管理系统的基本功能:数据的定义功能数据操作功能数据库的运行和管理数据库的建立和维护功能7.数据库管理系统由两大部分组成:查询处理器存储管理器8.层次结构:应用层语言翻译层数据存取层数据存储层操作系统数据库9. 数据库系统:数据库系统是基于数据库的计算机应用的系统,有四部分组成数据库数据管理系统应用系统用户。
10. 数据库管理员的职责:(1)决定数据库中要存储的数据及数据结构(2)决定数据库的存储结构和存取策略(3)保证数据的安全性和完整性(4)监控数据库的使用和运行(5)数据库的改进和重组重构11.数据模型的三要素:数据结构数据操作完整性约束12. 数据结构是所研究的对象的类型的集合,这些对象是数据库的组成成分,他们包含两类:一类是与数据之间联系有关的对象。
一类是与数据之间联系有关的对象。
13. 数据操作:数据库主要有检索和更新(插入、删除、修改)两大类操作。
14.在关系模型中任何关系都要满足实体完整性和参照完整性。
15.三种数据模型:概念模型逻辑模型物理模型逻辑模型中有:层次模型网状模型关系模型面向对象模型对象关系模型其中层次模型和网状模型统称为非关系模型。
数据库系统概论复习资料:第一章:三:简答题:1. 什么是数据库?答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。
数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。
因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。
2. 什么是数据库的数据独立性?答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。
逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。
当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。
物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立。
3. 什么是数据库管理系统?答:数据库管理系统(DBMS)是操纵和管理数据库的一组软件,它是数据库系统(DBS)的重要组成部分。
不同的数据库系统都配有各自的DBMS,而不同的DBMS各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS的构成相同,功能相似。
一般说来,DBMS具有定义、建立、维护和使用数据库的功能,它通常由三部分构成:数据描述语言及其翻译程序、数据操纵语言及其处理程序和数据库管理的例行程序。
4. 什么是数据字典?数据字典包含哪些基本内容?答:数据字典是数据库系统中各种描述信息和控制信息的集合,它是数据库设计与管理的有力工具,是进行详细数据收集和数据分析所获得的主要成果。
数据字典的基本内容有:数据项、数据结构、数据流、数据存储和处理过程5个部分。
第一章补充作业部分:假设教学管理规定:①一个学生可选修多门课,一门课有若干学生选修;②一个教师可讲授多门课,一门课只有一个教师讲授;③一个学生选修一门课,仅有一个成绩。
关系数据库标准语言关系数据库标准语言(Relational Database Standard Language)是一种用于管理和操作关系数据库的语言,它提供了一套标准化的命令和语法规则,使得用户可以方便地进行数据库操作。
关系数据库标准语言包括结构化查询语言(SQL)和数据定义语言(DDL)。
SQL是一种用于查询和操作数据库的语言,它可以进行数据的插入、删除、更新和查询等操作。
DDL是一种用于定义数据库结构的语言,它可以定义数据库的表、字段、索引等。
SQL是关系数据库标准语言的核心部分,它具有以下特点:1. 数据操纵语言(DML):SQL提供了一系列的命令,用于对数据进行操纵。
通过SQL,用户可以插入新的数据、更新已有数据和删除无用数据。
2. 数据查询语言(DQL):SQL可以用于查询数据库中的数据。
用户可以通过SQL语句来选择和过滤数据,以满足特定的查询需求。
3. 数据定义语言(DDL):SQL提供了一系列的命令,用于定义数据库的结构。
用户可以使用DDL语句来创建数据库、表和索引等。
4. 数据控制语言(DCL):SQL提供了一系列的命令,用于控制数据库的访问权限和安全性。
用户可以使用DCL语句来授权和撤销权限,保护数据库的安全性。
SQL语言具有丰富的语法和功能,可以满足各种各样的数据库操作需求。
它可以灵活地进行数据的增删改查,使得用户可以方便地对数据库进行管理和维护。
除了SQL语言外,还有一些数据库管理系统(DBMS)提供了自己的扩展语言,用于满足特定的需求。
例如,Oracle数据库提供了PL/SQL语言,用于编写存储过程和触发器等。
这些扩展语言在SQL 语言的基础上进行了扩展,提供了更强大的功能和更高的性能。
关系数据库标准语言是管理和操作关系数据库的基础工具,它提供了一套标准化的命令和语法规则,使得用户可以方便地进行数据库操作。
SQL语言作为关系数据库标准语言的核心部分,具有丰富的语法和功能,可以满足各种各样的数据库操作需求。
一、选择题:假设有三个基本表:学生表S、课程表C、学生选课表SC,它们的结构如下:S(Sno, Sname, Sex, Age, Dept, Class)C(Cno, Cname)SC(Sno, Cno, Score)1.查询所有比“王华”年龄大的学生姓名、年龄和性别,假设姓名唯一。
正确的SQL语句是()。
AA.SELECT Sname, Age, Sex FROM S WHERE Age > (SELECT Age FROM S WHERE Sname = ‘王华’)B.SELECT Sname, Age, Sex FROM S WHERE Sname = ‘王华’C.SELECT Sname, Age, Sex FROM S WHERE Age > (SELECT Age WHERE Sname = ‘王华’)D.SELECT Sname, Age, Sex FROM S WHERE Age > 王华.Age2.查询选修课程号为C2的学生中成绩最高的学生的学号。
正确的SQL语句是()。
DA.SELECT Sno FROM SC WHERE Cno=‘C2’ AND Score >= (SELECT Score FROM SC WHERE Cno = ‘C2’) B.SELECT Sno FROM SC WHERE Cno = ‘C2’ AND Score IN (SELECT Score FROM SC WHERE Cno = ‘C2’) C.SELECT Sno FROM SC WHERE Cno = ‘C2’ AND Score >= ANY (SELECT Score FROM SC WHERE Cno = ‘C2’)D.SELECT Sno FROM SC WHERE Cno = ‘C2’ AND Score >= ALL (SELECT Score FROM SC WHERE Cno = ’C2’)3.查询学生姓名及其所选修课程的课程号和成绩。
选择题:第一章绪论1。
数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和()。
A。
系统分析员 B.程序员 C.数据库管理员 D.操作员2。
数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( ).A.DBS包括DB和DBMSB.DBMS包括DB和DBSC.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS3。
下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段II.文件系统阶段III.数据库阶段。
A。
I 和II B。
只有II C.II 和III D。
只有I4.下列四项中,不属于数据库系统特点的是()。
A.数据共享B.数据完整性C。
数据冗余度高D.数据独立性高5.数据库系统的数据独立性体现在()。
A.不会因为数据的变化而影响到应用程序B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序C。
不会因为存储策略的变化而影响存储结构D。
不会因为某些存储结构的变化而影响其他的存储结构6.描述数据库全体数据的全局逻辑结构和特性的是( ).A.模式B.内模式C.外模式D。
逻辑结构7。
要保证数据库的数据独立性,需要修改的是( ).A.模式与外模式B.模式与内模式C。
三级模式之间的两层映射D.三层模式8.要保证数据库的逻辑数据独立性,需要修改的是()。
A.模式与外模式之间的映射B.模式与内模式之间的映射C。
模式 D.三级模式9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。
A.模式B.物理模式C。
子模式D。
内模式10.下述()不是DBA数据库管理员的职责。
A。
完整性约束说明B。
定义数据库模式C.数据库安全D.数据库管理系统设计11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是().A.层次模型B。
关系模型C。
网状模型D。
实体—关系模型12.区分不同实体的依据是() 。
第1章数据库系统概论三、简答题1. 答:数据库DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。
DB能为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性等特点。
2. 答:数据库管理系统DBMS是位于用户与操作系统(OS)之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。
DBMS 总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型等。
3. 答:①数据定义语言及其翻译处理程序;②数据操纵语言及其编译(或解释)程序;③数据库运行控制程序;④实用程序。
4. 答:文件系统中的文件是面向应用的,一个文件基本上对应于一个应用程序,文件之间不存在联系,数据冗余大,数据共享性差,数据独立性差;数据库系统中的文件不再面向特定的某个或多个应用,而是面向整个应用系统,文件之间是相互联系的,减少了数据冗余,实现了数据共享,数据独立性高。
5. 答:①实现数据的集中化控制;②数据的冗余度小,易扩充;③采用一定的数据模型实现数据结构化;④避免了数据的不一致性;⑤实现数据共享;⑥提供数据库保护;⑦数据独立性;⑧数据由DBMS统一管理和控制。
6. 答:数据独立性是指数据库中的数据独立于应用程序,即数据的逻辑结构、存储结构与存取方式的改变不影响应用程序。
数据独立性一般分为数据的逻辑独立性和数据的物理独立性。
数据逻辑独立性是指数据库总体逻辑结构的改变(如修改数据定义、增加新的数据类型、改变数据间的联系等)不需要修改应用程序。
数据物理独立性是指数据的物理结构(存储结构、存取方式等)的改变,如存储设备的更换、物理存储格式和存取方式的改变等不影响数据库的逻辑结构,因而不会引起应用程序的改变。
7. 答:数据库系统中数据不是面向单个应用组织的,而是直接面向数据本身及数据间的内在联系来组织的,因此可以方便地供多用户多应用共享,这样,数据的冗余度就大幅度降低了。
数据库系统概论复习资料:第一章:一选择题:1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
在这几个阶段中,数据独立性最高的是阶段。
A.数据库系统 B.文件系统 C.人工管理 D.数据项管理答案:A2.数据库的概念模型独立于。
A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界答案:A3.数据库的基本特点是。
A.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余大,易移植 (4)统一管理和控制B.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制C.(1)数据可以共享(或数据结构化) (2)数据互换性 (3)数据冗余小,易扩充 (4)统一管理和控制D.(1)数据非结构化 (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制答案:B4. 是存储在计算机内有结构的数据的集合。
A.数据库系统 B.数据库 C.数据库管理系统 D.数据结构答案:B5.数据库中存储的是。
A.数据 B.数据模型 C.数据以及数据之间的联系 D.信息答案:C6. 数据库中,数据的物理独立性是指。
A.数据库与数据库管理系统的相互独立 B.用户程序与DBMS的相互独立C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立答案:C7. .数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指。
A.同一个应用中的多个程序共享一个数据集合 B.多个用户、同一种语言共享数据C.多个用户共享一个数据文件D.多种应用、多种语言、多个用户相互覆盖地使用数据集合答案:D8.数据库系统的核心是。
A.数据库B.数据库管理系统C.数据模型D.软件工具答案:B9. 下述关于数据库系统的正确叙述是。
A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据答案:A10.将数据库的结构划分成多个层次,是为了提高数据库的①和②。
第3章关系数据库标准语言SQLSQL 概述l Structured Query Language,结构化查询语言l主要是基于关系代数的,但有部分是基于谓词演算的l最新标准SQL-2011版l是一个通用的、功能极强的关系数据库语言l从字面看SQL 只是一个查询语言,而实际上SQL作为一种标准数据库语言,从对数据库的随机查询到数据库的管理和程序设计,SQL几乎无所不能,功能十分丰富SQL的特点l综合统一l数据定义语言DDL(Data Definition Language) l建立数据库、定义关系模式…l数据操纵语言DML(Data Manipulation Language) l插入、修改、删除、查询l数据控制语言DCL(Data Control Language) l数据库安全性控制SQL的特点l高度非过程化l只需描述所需的信息,不需给出获取该信息的具体过程l面向集合的操作方式l操作对象、查询结果都是元组的集合l以同一种语法结构提供两种使用方式l独立语言l嵌入式语言l语言简捷,易学易用l核心功能只用了9个动词l语言接近于英语口语支持关系数据库三级模式结构数据定义l定义模式l CREATE SCHEMA <模式名>AUTHORIZATION <用户名>l调用该命令的用户必须拥有DBA权限,或CREATE SCHEMA权限l定义模式实际上定义了一个命名空间,在这个空间中可以进一步定义该模式包含的数据库对象,如基本表、视图、索引等数据定义l大多数的关系数据库管理系统(RDBMS),所使用的命令格式与ANSI SQL不同,这些RDBMS更常用下面命令格式:l CREATE DATABASE <数据库名>;l例如建立学费管理数据库xfgl的命令是:l CREATE DATABASE xfgl;删除模式l DROP SCHEMA <模式名><CASCADE|RESTRICT>l CASCADE(级联)l在删除模式的同时把该模式中所有的数据库对象全部一起删除l RESTRICT(限制)l如果模式中已经定义了下属的数据库对象,则拒绝该删除操作关系数据库中的术语l表↔关系l记录↔元组l字段↔属性l主键↔主码l外键↔外码学生-课程数据库l学生表l Student(Sno, Sname, Ssex, Sage, Sdept) l课程表l Course(Cno, Cname, Cpno, Ccredit)l学生选课表l SC(Sno, Cno, Grade)数据定义l建立一个Course表l CREATE TABLE Coursel(Cno CHAR(5),l Cname CHAR(20), l Cpno INT,l Ccredit FLOAT);数据定义l建立一个“学生”表Student,其中学号为主键,姓名取值也唯一,性别缺省为男l CREATE TABLE Studentl(Sno CHAR(5) PRIMARY KEY,l Sname CHAR(20) UNIQUE,l Ssex CHAR(1) DEFAULT '男',l Sage INT,l Sdept CHAR(15));数据定义l建立一个“学生选课”表SC,其中(Sno, Cno)为主码,Sno为外码,成绩范围为[0, 100]l CREATE TABLE SC(l Sno CHAR(5) ,l Cno CHAR(3) ,l Grade INT CHECK (Grade >= 0 AND Grade <=100),l PRIMARY KEY(Sno, Cno),l FOREIGN KEY(Sno) REFERENCESStudent(Sno));定义基本表l CREATE TABLE 表名(列名数据类型[NOT NULL][UNIQUE] [DEFAULT 缺省值][CHECK 条件],…PRIMARY KEY (字段列表),FOREIGN KEY (字段列表)REFERENCES 表名(字段名));l如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则即可定义在列级也可定义在表级数据定义l在SQL SERVER中可以定义五种类型的完整性约束,下面分别加以介绍:l NULL/NOT NULL:只能用于定义列约束l UNIQUE约束:UNIQUE既可用于列约束,也可用于表约束l PRIMARY KEY约束:PRIMARY KEY既可用于列约束,也可用于表约束l FOREIGN KEY约束:FOREIGN KEY既可用于列约束,也可用于表约束l CHECK约束:CHECK既可用于列约束,也可用于表约束UNIQUE和PRIMARY KEY异同l相同点:l UNIQUE 约束和PRIMARY KEY约束都强制唯一性l不同点:l一个表可以定义多个UNIQUE约束,而只能定义一个PRIMARY KEY 约束l允许空值的列上可以定义UNIQUE约束,而不能定义PRIMARY KEY约束修改基本表l ALTER TABLE 表名[ADD 列名数据类型…][ALTER COLUMN 列名数据类型…][ADD 约束条件][DROP CONSTRAINT 约束名]l在某些DBMS中,ALTER TALBE语句不能删除已存在的列,如果不再需要,则简单地忽略即可数据定义l向Student表增加“入学时间”列,其数据类型为日期型l ALTER TABLE Student ADD SentranceDATETIME;l不论基本表中原来是否已有数据,新增加的列一律为空值l将“入学时间”的数据类型改为字符串l ALTER TABLE Student ALTER COLUMNSentrance CHAR(20);l修改原有的列定义有可能会破坏已有数据数据定义l删除学生姓名必须取唯一值的约束ALTER TABLE StudentDROP CONSTRAINT UniSname;数据定义l使用此方式有如下一些限制:l不能改变列名l不能将含有空值的列的定义修改为NOT NULL约束l若列中已有数据,则不能减少该列的宽度,也不能任意改变其数据类型l只能修改NULL|NOT NULL约束,其他类型的约束在修改之前必须先删除,然后再重新添加修改过的约束定义删除基本表l DROP TABLE 表名[RESTRICT | CASCADE]l RESTRICTl该表的删除是有限制条件的l如果存在任何依赖于该表的对象存在,则拒绝进行l CASCADE (危险)l该表的删除是没有限制条件的l删除该表的同时删除所有依赖于该表的对象l<表名或视图名>目标列表达式l等价于l SELECT<目标列表达式>…FROM<表名或视图名>l<表名或视图名>×<表名或视图名>目标列表达式l等价于l SELECT<目标列表达式>…FROM<表名或视图名>[,<表名或视图名>]lσ<表名或视图名>条件l等价于l SELECT *FROM <表名或视图名> WHERE 条件数据查询lπA1, A2,…,An (σF1∧F2∧…∧Fn(R1×R2×…×Rn))l转换成等价的SELECT语句时,l SELECT子句:对应关系代数中的投影运算l FROM子句:对应关系代数中的笛卡儿积运算l WHERE子句:对应关系代数中的选择运算l等价于l SELECT A1,A2,…,AnFROM R1,R2,…,RnWHERE F1AND F2….AND Fn查询部分列l查询全体学生的学号与姓名SELECT Sno,SnameFROM Student;l<目标列表达式>所列字段与表中字段先后顺序可以不一致查询全部列l查询全体学生的详细信息SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student;或SELECT*FROM Student;查询经过计算的值l查询全体学生的姓名及其出生年份SELECT Sname,2015-SageFROM Student;l在SQL Server中会显示“无列名”查询经过计算的值l查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名SELECT Sname,'Year of Birth:',2015-Sage,LOWER(Sdept)FROM Student;l Sdept在数据库里的值不会改变为各字段起别名SELECT Sname[AS] NAME,'Year of Birth: ' [AS] BIRTH,2015 -Sage [AS] BIRTHDAY,LOWER(Sdept) [AS] DEPARTMENT FROM Student;消除取值重复的行SELECT ALL Sno FROM SC;等价于SELECT Sno FROM SC;l选取列名时,默认为ALLl结果:Sno1512115121151211512215122消除取值重复的行SELECT DISTINCT SnoFROM SC;结果:Sno1512115122l实际的系统经常省略消除重复元组这一开销比较大的步骤消除取值重复的行l DISTINCT短语的作用范围是所有目标列例:查询选修课程的各种成绩l SELECT DISTINCT Cno, Grade FROM SC;错误的写法SELECT DISTINCT Cno, DISTINCT GradeFROM SC;单表条件查询l查询计算机科学(‘CS’)系全体学生的姓名SELECT SnameFROM StudentWHERE sdept='CS';单表条件查询l查询所有年龄在20岁以下的学生姓名及其年龄SELECT Sname,SageFROM StudentWHERE Sage<20;等价于SELECT Sname,SageFROM StudentWHERE NOT Sage >= 20;单表条件查询l查询计算机系年龄在20岁以下的学生姓名SELECT SnameFROM StudentWHERE Sdept= 'CS' AND Sage < 20;单表条件查询l查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄SELECT Sname, Sdept, SageFROM StudentWHERE Sage>=20 AND Sage<=23;等价于SELECT Sname, Sdept, SageFROM StudentWHERE Sage BETWEEN20 AND23;单表条件查询l查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别SELECT Sname, SsexFROM StudentWHERE Sdept= 'IS' OR Sdept= 'MA' OR Sdept= 'CS';等价于SELECT Sname, SsexFROM StudentWHERE Sdept IN('IS', 'MA', 'CS');单表条件查询l查询缺少成绩的学生的学号和相应的课程号SELECT Sno, CnoFROM SCWHERE Grade IS NULL;单表条件查询l[NOT]LIKE'<匹配串>'[ESCAPE'<换码字符>'] l匹配串:固定字符串或含通配符的字符串l当匹配模板为固定字符串时,即不含通配符时l用=运算符取代LIKE谓词l用<>运算符取代NOT LIKE谓词单表条件查询l% (百分号) 代表任意长度(长度可以为0)的字符串l例:a%b表示以a开头,以b结尾的任意长度的字符串。